資料庫的case when 使用例項
本文作者:蘇生米沿
需求很簡單,我有一個部門和部門的請假申請表。表資料簡單羅列如下:
申請資訊存放在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...then
和C語言中switch... case1:... case2:...用途一樣 例如把成績分類別: select 分數,類別=Case WHEN 分數>=85 THEN '優秀'WHEN 分數>=75 THEN '良好'WHEN 分數
資料庫 case when then
select d.rq,d.sjd,count(d.num) as total from (select c.rq,c.sj, case WHEN '06:01'<=c.sj and c.sj<='06:30' THEN '06:00' WHEN '06:3
mysql 資料庫case..when的使用
eg:(CASE us.sign_method WHEN '1' THEN '藍芽' WHEN '2' THEN '照片對比' WHEN '3' THEN 'RFID' ELSE '座標定位' END註釋:case後面加欄位名 ,when後面跟資料庫中數字對應的文字表
資料庫case when的用法
考試題考到了,之前沒接觸過所以沒考出來,這裡後來自學了一下,已經成功了。下面給出問題描述浙江大學每門課的績點(GPA)和成績(SCORE)有關,在已知成績的前提下,我們需要得到GPA的資料,我就想到了C
資料庫的case when 使用例項
本文作者:蘇生米沿需求很簡單,我有一個部門和部門的請假申請表。表資料簡單羅列如下:申請資訊存放在sqxx這張表中,然後存放了zybm和zybm對應的部門資訊,有個部門表bmxx,想查詢開始結束時間間隔為半天的(時差小於4即可)和大於半天的(按一天算)以部門為單位的統計結果,效
postgresql case when使用例項
建表插入資料 CREATE TABLE test ( ID serial, col INT, NAME VARCHAR (10) ); INSERT INTO test (col, NAME) VALUES (0, 'A'), (0, 'A'), (0, 'A'),
性別欄位在資料庫中儲存數字,查詢時,如何查詢出數字對應的男和女?(case when的應用)
今天敲程式碼的時候,剛好遇到這個問題,寫部落格記一下。 情況如下:性別欄位在資料庫中儲存的是數字,男對應1,女對應0。然後,查詢的時候,我想查詢出男和女兩個字,而不是1和0。 一開始,我寫的sql語句,是直接從查詢出性別對應的數字,sql語句如下: SELECT Em
postgresql case when雙例項
建表插入資料 CREATE TABLE test ( ID serial, col INT, NAME VARCHAR (10) ); INSERT INTO test (col, NAME)
mysql資料庫group_concat函式內包含case when 語法時的使用
select `a`.`tdorderid`,group_concat('型別:',(case `a`.`td_type` when 'no_goods' then '無貨退款' when 'low_quantity' then '質量退款' when 'no_reaso
SQL語句中CASE WHEN的使用例項
CASE 可能是 SQL 中被誤用最多的關鍵字之一。雖然你可能以前用過這個關鍵字來建立欄位,但是它還具有更多用法。例如,你可以在 WHERE 子句中使用 CASE。首先讓我們看一下 CASE 的語法。在一般的 SELECT 中,其語法如下:SELECT<myColumnSpec>=CASEWHE
資料庫中case...when...then...end語句的使用
面試題 媽的今天去面試遇到這麼一道題 都忘記鳥 資料庫表 select username,case when yuwen>=80 then '優秀' when (yuwen<80 and yuwen>=60) then '及格'
Mysql之case when then end語句(附帶例項)
這段時間,做專案做累了,好不容易有點個人的學習時間,利用這個小時,總結一下,最近做統計的時候常用的case語句吧。結構:case when… then …end1.判斷的同時改變其值eg:select OperatorAccount, case when CreateTime>'
使用case when高階用法對資料庫進行行列轉化 分組、聚合函式使用
看下原來程式碼: 將kpi_name這一列進行在一行顯示 一、不用分組、聚合函式 --測試不用聚合分組函式 select kpi_date, tyt_name, (case when kpi_name='換卡' then kpi_value end ) G4指
CASE WHEN 簡單使用,更換資料庫指定的字串
我是在查詢中遇到了查詢統計的資料統計的結果應該是0,結果用空表示,因此使用到了case when語句。接下來簡單的介紹一下它的用法。 簡單使用:統計結果為null則設定為0 case when a.
Oracle中CASE WHEN的用法例項
例項演示: (1)查詢表users中的資料。 select u.id,u.realname,U.SEX from users u; 查詢結果如下 ID REALNAME SEX 1 10082 鬆XX 2 10084 林XX
C# Winform Access資料庫中Case when語句用法
問題描述: 在Sql中可以用Case when 語句來進行條件判斷,而在access中此語句被認定為語法錯誤無法應用。 case when 語句語法
case when 函式的使用例項
先簡單說點case函式的概念,case()函式有兩種形式,第一種: case when 條件1 then 結果1 when 條件2 the
mysql資料庫中case...when...then...end語句的使用
有一張表,裡面有3個欄位:語文,數學,英語。其中有3條記錄分別表示語文70分,數學80分,英語58分,請用一條sql語句查詢出這三條記錄並按以下條件顯示出來(並寫出您的思路): 大於或等於80表示優
Oracle select case when
對比 設計 搜索 性別 primary 忽略 oracl 數據 from Case具有兩種格式。簡單Case函數和Case搜索函數。 --簡單Case函數 CASE sex WHEN ‘1‘ THEN ‘男‘ WHEN ‘2‘ THEN ‘女‘ ELSE ‘
【sql技巧】mysql修改時,動態指定要修改的字段 update `table` set (case when ....) = 1 where id = xx
幫助 ase stack pan 希望 需求 記錄 開始 lec 如果你點進了這篇帖子,那麽你一定遇到了跟我一樣的問題。別看題目的set case when...,我一開始也是第一反應是用case when但是發現並不好使。 問題呢,說得高大上一點:動態指定要修改的字段。