如何解决MySQL-每年从UNION计算SUMfield
我有一个SQL UNION命令,它从一个大数据库(deaths_all
)中获得年份(etos
变量)和该年份的死亡数(sunoloThanatwn
)3联合会指出了不同的情况。
每年,正确返回3行。我想计算sunoloThanatwn
的总和,这样我每年就有一个SUM(sunoloThanatwn
)而不是每年有3行。
SQL UNION查询:
(
SELECT etos,sunoloThanatwn
FROM deaths_all
WHERE field = "A"
GROUP BY etos
)
UNION
(
SELECT etos,sunoloThanatwn
FROM deaths_all
WHERE field = "B"
GROUP BY etos
)
UNION
(
SELECT etos,sunoloThanatwn
FROM deaths_all
WHERE field = "C"
GROUP BY etos
)
ORDER BY etos
查询结果如下(我每年需要一笔款项):
解决方法
只需执行一个聚合查询:
SELECT etos,SUM(sunoloThanatwn) AS total
FROM deaths_all
WHERE field IN ('A','B','C')
GROUP BY etos;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。