【发布时间】:2021-10-01 09:29:58
【问题描述】:
我在 3 个表中有这些数据:
表 1:BU
| BU_CODE | ARCHIVE_FLG |
|---|---|
| 1001 | Y |
| 1002 | Y |
| 1003 | Y |
| 1004 | N |
| 1005 | Y |
表 2:STG_ACCOUNT
| BU_CODE | ACCOUNT_ID |
|---|---|
| 1001 | A0001 |
| 1001 | A0003 |
| 1002 | A0002 |
表 3:STG_CONTRACT
| BU_CODE | CONTRACT_ID |
|---|---|
| 1002 | C0001 |
| 1002 | C0002 |
这两个查询工作正常:
查询 1:
SELECT
T2.BU_CODE, COUNT(T1.ACCOUNT_ID) AS COUNT_OF_ACCOUNT
FROM STG_ACCOUNT T1
FULL JOIN S_BU T2 ON T2.BU_CODE = T1.BU_CODE
WHERE T2.ARCHIVE_FLG = '1'
GROUP BY T2.BU_CODE
ORDER BY T2.BU_CODE;
| BU_CODE | COUNT_OF_ACCOUNT |
|---|---|
| 1001 | 2 |
| 1002 | 1 |
| 1003 | 0 |
| 1005 | 0 |
查询 2:
SELECT
T2.BU_CODE, COUNT(T1.CONTRACT_ID) AS COUNT_OF_CONTRACT
FROM STG_CONTRACT T1
FULL JOIN S_BU T2 ON T2.BU_CODE = T1.BU_CODE
WHERE T2.ARCHIVE_FLG = '1'
GROUP BY T2.BU_CODE
ORDER BY T2.BU_CODE;
| BU_CODE | COUNT_OF_CONTRACT |
|---|---|
| 1001 | 0 |
| 1002 | 2 |
| 1003 | 0 |
| 1005 | 0 |
现在我想合并这两个查询的结果以显示更优雅的输出:
| BU_CODE | COUNT_OF_ACCOUNT | COUNT_OF_CONTRACT |
|---|---|---|
| 1001 | 2 | 0 |
| 1002 | 1 | 2 |
| 1003 | 0 | 0 |
| 1005 | 0 | 0 |
什么 Oracle SQL 函数可以帮助我?
【问题讨论】:
-
感谢您的格式化问题,请查看此链接asktom.oracle.com/pls/apex/…
标签: oracle