mysql – 在count和group by中使用CASE的SQL
发布时间:2020-12-11 23:50:44 所属栏目:MySql教程 来源:网络整理
导读:我正在使用CASE对表中的数据进行分类并对其进行计数,但结果并不准确 现场演示[here] select DATE(date) as day,count(*),count(distinct case when name = 'fruit' then 1 else 0 end) as fruits,count(distinct case when name = 'vege' then 1 else 0 end)
我正在使用CASE对表中的数据进行分类并对其进行计数,但结果并不准确 现场演示[here]
我不确定问题是CASE还是字符串匹配=因为没有’甜点’仍然是1?
因此,当名称不是糖果时,它会计为0.此外,由于您使用的是DISTINCT,因此它只计算一个或两个值.您应该使用SUM或删除DISTINCT和ELSE 0:
要么:
Here is一个修改过的sqlfiddle. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读