在MySQL中总结(Summing in MySQL)

编程入门 行业动态 更新时间:2024-10-23 03:17:38
MySQL中总结(Summing in MySQL)

我有这个假设的表格:

+----+---------+-------+ | id | type_id | value | +----+---------+-------+ | 1 | 1 | 10 | | 2 | 1 | 20 | | 3 | 2 | 30 | | 4 | 2 | 40 | | 5 | 3 | 50 | | 6 | 3 | 60 | | 7 | 4 | 70 | | 8 | 4 | 80 | | 9 | 4 | 90 | | 10 | 4 | 100 | +----+---------+-------+

我想要做的是将所有值与类型1,2,3和所有值类型4相加:

+------+------+ | s123 | s4 | +------+------+ | 210 | 340 | +------+------+

如何在不使用嵌套查询和UNION的情况下执行此操作? 我尝试了以下查询,结果错误:

SELECT SUM(t1.value) AS s123, SUM(t2.value) AS s4 FROM test AS t1, test AS t2 WHERE t1.type_id IN (1,2,3) AND t2.type_id=4 +------+------+ | s123 | s4 | +------+------+ | 840 | 2040 | +------+------+

I have this hypothetical table:

+----+---------+-------+ | id | type_id | value | +----+---------+-------+ | 1 | 1 | 10 | | 2 | 1 | 20 | | 3 | 2 | 30 | | 4 | 2 | 40 | | 5 | 3 | 50 | | 6 | 3 | 60 | | 7 | 4 | 70 | | 8 | 4 | 80 | | 9 | 4 | 90 | | 10 | 4 | 100 | +----+---------+-------+

What I want to do is sum all values with types 1,2,3 and all values with type 4:

+------+------+ | s123 | s4 | +------+------+ | 210 | 340 | +------+------+

How can I do this without using nested queries and UNION? I tried the following query which gave the wrong result:

SELECT SUM(t1.value) AS s123, SUM(t2.value) AS s4 FROM test AS t1, test AS t2 WHERE t1.type_id IN (1,2,3) AND t2.type_id=4 +------+------+ | s123 | s4 | +------+------+ | 840 | 2040 | +------+------+

最满意答案

尝试这个:

SELECT SUM(CASE WHEN t1.type_id = 4 THEN 0 ELSE t1.value END) AS s123, SUM(CASE WHEN t1.type_id = 4 THEN t1.value ELSE 0 END) AS s4 FROM test AS t1 WHERE t1.type_id IN (1,2,3, 4)

Try this:

SELECT SUM(CASE WHEN t1.type_id = 4 THEN 0 ELSE t1.value END) AS s123, SUM(CASE WHEN t1.type_id = 4 THEN t1.value ELSE 0 END) AS s4 FROM test AS t1 WHERE t1.type_id IN (1,2,3, 4)

更多推荐

本文发布于:2023-07-30 21:49:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1340342.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:MySQL   Summing

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!