MySQL   发布时间:2022-05-15  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了mysql在同一个字段中的多个计数和组值大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我环顾四周但找不到答案
我需要一个查询,根据同一字段中的值返回2组值作为字段名称

例子我有一张桌子

NAME,VALUE
name1,2
name1,3
name1,4
name2,2
name2,3
name2,4

现在我想在一个组中对值2和3进行计数和分组,在另一个组中对值4进行分组,因此我的结果看起来像这样

NAME,GRP1_COUNT,GRP2_COUNT
name1,3,1
name2,1

我没有太多运气就尝试了JOIN和UNION
任何帮助赞赏

最佳答案
@H_182_19@mysqL没有pivot函数,因此您必须使用带有CASE表达式的聚合函数来转换数据.对于此类计算,您将使用COUNT或SUM:

SELEct name,sum(case when value in (2,3) then 1 else 0 end) GRP1_COUNT,sum(case when value = 4 then 1 else 0 end) GRP2_COUNT
from yourtable
group by name

见SQL Fiddle with Demo

COUNT版本:

SELEct name,count(case when value in (2,3) then VALUE end) GRP1_COUNT,count(case when value = 4 then VALUE end) GRP2_COUNT
from yourtable
group by name

见SQL Fiddle with Demo

大佬总结

以上是大佬教程为你收集整理的mysql在同一个字段中的多个计数和组值全部内容,希望文章能够帮你解决mysql在同一个字段中的多个计数和组值所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: