假设我有一个帐户条目移动表,比如
ACCOUNTS table
+-------+------+---------+
| title | side | balance |
+-------+------+---------+
| cash | debit| 500.0 |
+-------+------+---------+
| cash |credit| 300.0 |
+-------+------+---------+
| cash |credit| 600.0 |
+-------+------+---------+
#..... more than 10'000 debit and credit rows
我想对贷方行的总和和借方行的总和进行分组,并在不同的列中显示它们的每一个总和。
我试图做的是对各组边的余额求和,比如
select title, side, sum(balance) from accounts group by side
我得到 2 行,一个是借方总和,另一个是贷方总和,比如
+-------+------+---------+
| cash | debit| 500.0 |
+-------+------+---------+
| cash |credit| 900.0 |
+-------+------+---------+
我想要的是在一个结果行中得到整个结果,一个字段中的借方总和和另一个字段中的贷方总和。我希望最终结果是这样的
+-------+-------+-------+
| cash | 500.0 | 900.0 |
+-------+-------+-------+
谢谢。
最佳答案
你可以用例
select title, sum( case side when 'debit' then balance else 0 end ),
sum( case side when 'credit' then balance else 0 end )
from accounts
group by title
关于mysql - 我可以从同一列中选择值并将它们显示在 2 列结果中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39131375/