需求很簡單,我有乙個部門和部門的請假申請表。表資料簡單羅列如下:
申請資訊存放在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...