我在mysql表id,status和count中有3列字段,我想用不同的id值得到status组和count之和示例如下
id - status - count
1 - test1 - 1
1 - test1 - 1
1 - test2 - 1
1 - zer1 - 0
2 - exam1 - 1
2 - exam1 - 1
2 - zer2 - 0
2 - exam2 - 1
3 - mit1 - 1
3 - mit2 - 1
3 - zer3 - 0
4 - term1 - 1
我想要的结果如下
id - status - count
1 - test1 - 2
2 - exam1 - 2
3 - mit1 - 1
4 - term1 - 1
我尝试了以下查询的结果,但我没有得到结果
SELECT id,status,sum(count) as count FROM `test` where count=1 group by status order by id
对于上面的查询,我得到以下结果
id - status - count
1 test1 2
2 exam1 2
2 exam2 1
3 mit1 1
3 mit2 1
4 term1 1
我找不到正确的查询来删除重复的id和order by sum of count。请指导我获取结果。
4条答案
按热度按时间jdzmm42g1#
您可以在此处使用多个查询,例如:
polkgigr2#
使用子查询尝试以下操作:
bqf10yzr3#
使用相关子查询
https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=f15f06ce7e6967e1f6c1d21c830b3985
roejwanj4#
这是个棘手的问题,因为有两个条目
id
3具有相同的count
. 不过,我认为这个查询可以满足您的要求:输出: