sql - 将两列相加,然后减去总和
问题描述
这是我的桌子。
pk | transactionID
| description
| transactionDate
| transactionAmount
| accountRecieve
| accountSend
这些是我的专栏。我需要通过查询找到给定 accountNumber 的余额。为此,我必须在 accountSend = 127 处求和 transactionAmount,然后在 accountRecieve = 127 处求和 transactionAmount,然后从第二个总和中减去第一个总和并将其显示在一个结果中。
我可以解释它,但我不知道如何在 SQL 中执行它。任何人都可以请帮忙。
解决方案
一种选择使用条件聚合:
SELECT
SUM(IIF(accountReceive = 127, transactionAmount, 0)) -
SUM(IIF(accountSend = 127, transactionAMount, 0)) AS diff
FROM yourTable;
这个想法是对整个表进行一次传递,使用两个标准对交易金额求和。
推荐阅读
- java - 是否可以使用 Spring @Scheduled 注解安排作业每小时运行一次,但每次随机运行一次?
- css - Sass/scss'mixin as a function'返回带参数的字符串?
- javascript - 如何防止选择表单被更改,直到 Vue 中的对话框完成
- javascript - 无法控制代码的执行 Inside fetch
- java - ComboBox ChangeListener 在 AutoCompleteDropDown 中被调用 3 次
- python - 如何在 Django 中正确定义“get_absoute_url”?
- amazon-web-services - 使用 CLI 获取 aws EMR DNS 地址
- c - 陷入无限循环,不知道我做错了什么
- python-3.x - 是否有用于自动从 Google 趋势中提取数据的循环功能?
- reactjs - React Data Grid,如何删除一行?