簡體   English   中英

SQL查詢總和IF GROUP BY

[英]sql query SUM IF GROUP BY

這是我的餐桌費:

id2 name exp date ...
1  Jack 2
2  Joe  3.1
3  Marian 5.8
1  Jack  2
1  Jack  4
3  Marian 3

我想要這個查詢:總結所有人的支出,如果支出超過5,則回顯它。

我對if部分有疑問(如果大於5)。 我按id2和SUM(exp)分組,工作正常,但我不知道如何暗示IF。 我寫了SUM(IF(exp >= 5, 1, 0))但是sql錯誤說是不正確的組函數。

S`ELECT id2, SUM(IF(exp >= 5, 1, 0)) as ex FROM expense GROUP BY id2`

謝謝您的查詢。 謝謝

這可能是您想要的:

SELECT id2, SUM(exp),
       GROUP_CONCAT(CASE WHEN exp > 5 THEN exp END) as ExpsGreaterThan5
FROM expense
GROUP BY id2;
select id2,name,sum(exp) from expense group by user_id having sum(exp)>5

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM