[SQL ] SELECT * FROM x GROUP BY y 語法

看板Database (資料庫)作者 (蘇打)時間7年前 (2017/12/18 23:16), 編輯推噓1(101)
留言2則, 2人參與, 7年前最新討論串1/2 (看更多)
資料庫名稱:MariaDB 資料庫版本:10 內容/問題描述: 資料大致如下 ID unit quantity status -------------------------------------- A 10 10 OK A 10 20 Pending A 20 10 OK B 10 10 OK B 10 10 Fail C 10 10 OK C 10 10 OK C 10 10 OK 想要做的是用 GROUP BY ID,將同 ID 的彙整 同時進行數量加總 前述部分語法沒問題,主要是 Status 欄位 目前的語法 SELECT ID, SUM(unit*quantity) as count, status FROM table GROUP BY ID 發現 Status 欄位顯示是先搶先贏 而我想要呈現的方式是 Fail > Pending > OK 即 相同 ID 中有一個status 為 Fail 則顯示 Fail 要如何撰寫呢? 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.136.16.37 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1513610169.A.634.html

12/18 23:33, 7年前 , 1F
唔.. 找到的方法是子句配合 ORDER 查詢,有其他方法嗎?
12/18 23:33, 1F

12/19 03:47, 7年前 , 2F
用數值表達fail=0, sum的時候0乘任何數都是0
12/19 03:47, 2F
文章代碼(AID): #1QDzkvOq (Database)
文章代碼(AID): #1QDzkvOq (Database)