gpt4 book ai didi

sql - 如何从具有不同 where 子句的表中两次获得 sum() ?

转载 作者:行者123 更新时间:2023-12-04 22:37:20 27 4
gpt4 key购买 nike

SELECT 
sum(qty) as accept,
(SELECT sum(qty)
FROM pile
WHERE pf=false) as reject
FROM pile
WHERE pf=true;

这是我目前使用的 SQL,但我猜它不是最佳实践?
我之前使用的另一个选择是 SELECT sum(qty) FROM pile GROUP BY pf但我需要它们作为列而不是行。

还有其他解决方案吗?

最佳答案

单次通过表。

SELECT 
sum(CASE WHEN pf = TRUE THEN qty ELSE 0 END) as accept,
sum(CASE WHEN pf = FALSE THEN qty ELSE 0 END) as reject
FROM pile;

关于sql - 如何从具有不同 where 子句的表中两次获得 sum() ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3810105/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com