mysql sum(value),其中sum(value)>2500

cld4siwp  于 2021-06-24  发布在  Mysql
关注(0)|答案(2)|浏览(515)

我有一个事务表(针对需要的列进行了简化):

id    client_id    value
1     1            200
2     2            150
3     1            350
4     2            100

我想返回client_id,其中sum(value)>=500。
我试过: SELECT client_id, sum(value) as total FROM transactions WHERE total >= 500; 该查询返回“#1054-where子句”中的未知列“total”
我也试过: SELECT client_id, sum(value) FROM transactions WHERE sum(value) >= 500; That query returns "#1111 - Invalid use of group function" 我也试过: SELECT client_id, sum(value) FROM transactions WHERE sum(value) >= 500 GROUP BY client_id; 该查询还返回“#1111-组函数的使用无效”
我花了几个小时寻找,还没有找到正确的问题,找到我的查询词,任何帮助感谢!

mlnl4t2r

mlnl4t2r1#

... HAVING SUM(value) >= 500 在sql中, WHERE 应用于单个行值,而 HAVING 应用于跨行聚合值。

v440hwme

v440hwme2#

其他两个答案都没有给出确切的问题,所以这里是:

SELECT client_id
FROM transactions
GROUP BY client_id
HAVING SUM(value) >= 500;

相关问题