資料庫的case when 使用例項

2021-07-09 08:03:38 字數 602 閱讀 8099

需求很簡單,我有乙個部門和部門的請假申請表。表資料簡單羅列如下:

申請資訊存放在sqxx這張表中,然後存放了zybm和zybm對應的部門資訊,有個部門表bmxx,想查詢開始結束時間間隔為半天的(時差小於4即可)和大於半天的(按一天算)以部門為單位的統計結果,效果如下:

今天學了乙個執行語句,順利實現。感覺還是棒棒噠。

select sqbm, (select bmmc from bmxx b where b.bm=a.sqbm) as bmmc,

sum(case when a.hasdata <>'' and timestampdiff(hour,kssj,jssj)<=4 then 1 else 0 end) as bt,

sum(case when a.hasdata <>'' and timestampdiff(hour,kssj,jssj) <=4 then 1 else 0 end) as qt

from clgl_ycsqxx a group by a.sqbm;

這個語句首先去關聯了部門表,查詢了部門名稱,然後根據日期間隔,case when判斷了小於4小時的記錄個數和大於4小時的記錄個數。最後根據部門分組。

資料庫的case when 使用例項

需求非常easy,我有乙個部門和部門的請假申請表。表資料簡單羅列例如以下 申請資訊存放在sqxx這張表中,然後存放了zybm和zybm相應的部門資訊,有個部門表bmxx,想查詢開始結束時間間隔為半天的 時差小於4就可以 和大於半天的 按一天算 以部門為單位的統計結果,效果例如以下 今天學了乙個執行語...

資料庫之Case When

近期幾天的工作本來組長是安排我用mindfocion畫幾個圖,本來以為難點是這個控制項的使用,可是開發的時候才發現由於資料量有點多,所以在開發的時候彙總這些資訊倒是費了我許多的功夫,最後總結一下就是寫了幾個sql語句,這裡與大家分享一下。假設有須要用的就太好了。先說一下需求,組長讓我畫乙個圖。要求是...

資料庫中的一種條件查詢 case when

在最近的一場筆試中,遇到這樣一道sql的題目。有一張表如下 要通過查詢語句得到以下結果 知識點 case 搜尋函式 1 簡單的case函式 case clo name 列名 when value1 列值 then value1 value1 是我們賦予的值 when value2 列值 then v...