[英]How to query overall balance for credit / debit of customer?
問題:我有一個 SQL 服務器表如下:
交易編號 | 時間戳 | 顧客 | 成本 | 手術 |
---|---|---|---|---|
123 | 2020 年 10 月 12 日 | 1 | 60 | 信用 |
456 | 2020 年 11 月 12 日 | 2 | 50 | 信用 |
789 | 2020 年 11 月 12 日 | 1 | 20 | 借方 |
000 | 2020 年 12 月 12 日 | 3 | 100 | 信用 |
999 | 15-12-2020 | 2 | 50 | 借方 |
我想要客戶的整體實時余額,如下所示。 因此,在上述交易表中輸入新記錄之前,我將檢查該客戶的余額並將其顯示給用戶。
顧客 | 平衡 |
---|---|
1 | 40 |
2 | 0 |
3 | 100 |
我嘗試了加入和合並,但沒有奏效。
您可以只使用條件聚合:
select customer,
sum(case when operation = 'credit' then cost else -cost end) as balance
from mytable
group by customer
sum()
中的case
表達式根據是貸方還是借方來添加或減去成本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.