Re: [SQL ] mysql語法請教

看板Database (資料庫)作者 (無限MUGEN)時間17年前 (2007/05/15 12:25), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/5 (看更多)
※ 引述《kevin524 (等待的天空)》之銘言: : 請問一下 : 假如我有一個table : 要依據欄位進行不同值的的count計算 : 最後依據計算出來的key值做合併 : 要如何做到?謝謝!! : 如table有4個欄位 : 時間 | 節次 | 參與上課 | 學號 : 2007-5-15 2 1 abc : 2007-5-15 2 0 cde : 2007-5-15 3 1 dfg : 2007-5-15 3 1 ekj : 2007-5-16 3 0 kfj : 2007-5-16 3 0 qwe : 有去上課為1,沒去則否 : 我想利用時間和節次做分組來計算 : 當天每個節次上課人數以及缺課人數計算 : 最後是以時間和節次為分類 : 如 : 時間 | 節次 | 上課人數 | 缺席人數 : 2007-5-15 2 2 1 : 2007-5-15 3 3 0 : 2007-5-16 3 2 2 : 以上結果要怎麼下語法才能做到,謝謝!! MySQL 中好像沒有類似 ORACLE的 decode 或是 case 的"函式" 若支援這樣的函式 就可以這麼下 select 時間 , 節次 , count(參與上課) , sum(decode(參與上課 , 1 , 0 ,1 ) from TABLE group by 時間 , 節次 或是 select 時間 , 節次 , count(參與上課) , sum( case WHEN 參與上課=1 THEN 0 else 1 end ) from TABLE group by 時間 , 節次 不過由於 參與上課 VALUE 為 1 & 0 所以說 並不需使用 case 或 decode 這麼麻煩 便可以得到上課的人數 select 時間 , 節次 , count(參與上課) , sum(參與上課) from TABLE group by 時間 , 節次 再改一下 select 時間 , 節次 , count(參與上課) , count(參與上課)-sum(參與上課) from TABLE group by 時間 , 節次 這樣就是缺席人數啦 幸好那個欄位的值是 0 與 1 ( ′▽`)y▂ξ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.145.230.2
文章代碼(AID): #16IJPGSO (Database)
討論串 (同標題文章)
文章代碼(AID): #16IJPGSO (Database)