作者paranoia5201 (社會黑暗、行路難)
看板Database
標題[SQL ] 想要 group by 資料,內含 null
時間Thu Mar 12 21:14:17 2020
資料庫名稱:Oracle
資料庫版本:11g
內容/問題描述:
資料長相
id channel amount
Anne null 100
Anne FB 200
預期結果
id channel amount
Anne FB 300
無用指令
select id, channel, sum(amount) from table group by id, channel
煩請高人指導,感謝~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 18.194.116.40 (美國)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Database/M.1584018859.A.E40.html
1F:推 mered: 把channel拿掉,你group 裡面包含channel空白也會被算進去 03/15 13:32
2F:推 moyasi: 不一樣的資料你是要怎麼group 你先想好channel到底要什麼 03/17 11:31
3F:推 lilicoco520: 為什麼null可以跟FB合在一起?是只要Anne但channel為 03/17 22:22
4F:→ lilicoco520: null的都歸入FB?如果是,可以先將資料nvl(channel,’ 03/17 22:22
5F:→ lilicoco520: FB'),再group by 03/17 22:22
高人指點後的解法:
select id, max(channel), sum(amount) from table group by id
由於每個人只有單獨的 channel ,但是不時有資料 missing,所以才要這樣做。
※ 編輯: paranoia5201 (18.194.116.40 美國), 03/18/2020 20:38:03