作者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/cn.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