本文介绍了MySQL查询选择一个不同的列和另一个列中的值的计数,其中列像不同的列?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的数据表如下:
ID WEEK RESULT 1 13 GOOD 2 13 BAD 3 13 GOOD 4 14 GOOD 5 14 BAD 6 15 BAD我需要一个sql查询来创建一个数组,如下所示:
I need a sql query to create an array as below:
WWEK GOOD_COUNT BAD_COUNT 13 2 1 14 1 1 15 0 1任何人都可以帮助我找到合适的mysql查询吗?
Can anyone please help me to find an appropriate mysql query?
推荐答案您可以使用带有CASE表达式的聚合函数将行转换为列:
You can use an aggregate function with a CASE expression to convert the rows into columns:
select week, sum(case when result = 'good' then 1 else 0 end) GoodResult, sum(case when result = 'bad' then 1 else 0 end) BadResult from yt group by week;请参见带演示的SQL提琴
更多推荐
MySQL查询选择一个不同的列和另一个列中的值的计数,其中列像不同的列?
发布评论