我正在使用SQLite在android studio上制作一个项目,我遇到了问题
我有一张类似于以下内容的表格:
M N
1 100
1 -50
1 10
1 -20
2 100
2 -15
3 40
什么查询会得到以下结果:
M Total TotalPositive TotalNegative
1 40 110 -70
2 85 100 -15
3 40 40 0
我写了以下查询:
SELECT M, SUM(N) AS 'Total' FROM tablename GROUP BY N;
我只能得到M和Total部分,我不知道我怎么才能得到正负值的总和。能帮助我吗?
提前致谢。
答案 0 :(得分:1)
您希望按M
而不是N
进行分组。您可以使用CASE
进行条件聚合:
select
M,
sum(N) total_sum,
sum(case when N > 0 then N else 0 end) total_positive,
sum(case when N < 0 then N else 0 end) total_negative
from your_table
group by M;