一个单表统计问题

Soulic 2015-10-12 08:50:12
有表user_log
id   user_id       flag         amount
1 1 1 12000.00
2 1 0 1000.00
3 1 0 560.00
4 1 0 2339.00
5 1 1 798.00
6 1 0 1580.00


flag: 1: 收入 0: 支出

如何写SQL语句查询得到
user_id      收入         支出         总计
1 19980.00 5497.00 25459.00


...全文
185 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
feng00~ 2015-10-14
  • 打赏
  • 举报
回复
SELECT user_id, SUM(CASE flag WHEN 1 THEN amount ELSE 0 END) 收入 , SUM(CASE flag WHEN 0 THEN amount ELSE 0 END) 支出 , SUM(amount) 总金额 FROM user_log GROUP BY user_id
ACMAIN_CHM 2015-10-12
  • 打赏
  • 举报
回复
select user_id,
sum(flag*amount) as 收入,sum((1-flag)*amount) as 支出,sum(amount) as 总计
from user_log

56,912

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧