【发布时间】:2020-01-20 16:34:37
【问题描述】:
如何从以下txn_tbl 表中为每个客户cust 根据贷方CRD 和借方DEB 获取余额
SQL> SELECT * FROM txn_tbl;
CUS AMT TXN_CDE
--- ---------- ----------
A 500 CRD
B 400 CRD
A 350 CRD
C 235 DEB
C 800 CRD
B 132 DEB
D 673 CRD
这是我尝试过的查询
SELECT cust, LAG(amt,1,0) OVER (PARTITION BY cust ORDER BY cust) "Bal"
FROM
(SELECT cust, SUM(amt)amt
FROM txn_tbl
GROUP BY cust, txn_cde
ORDER BY 2);
【问题讨论】:
-
您应该包含您尝试过的所有查询。
-
@GordonLinoff 现在我编辑了我的问题
-
一个简单的聚合(带有
GROUP BY子句的SUM()函数)就可以了。 -
@Nvr 请您告诉我们您希望从您显示的示例数据中得到什么。查询后的结果是什么。干杯!另外,我看到你过去的问题:你知道你可以接受正确的答案吗?你知道你可以投票给对你有帮助的答案吗?
-
@VBoka 我不知道投票。请指导我进行投票
标签: sql oracle window-functions analytic-functions