帮我用oracle语句写一个银行存款日报对比表
时间: 2023-08-28 20:18:14 浏览: 94
好的,以下是一个用 Oracle SQL 语句生成银行存款日报对比表的示例:
```
SELECT
a."日期",
a."存款种类",
a."存款金额",
a."存款人",
a."存款账号",
b."存款金额" AS "昨日存款金额"
FROM
(
SELECT
"日期",
"存款种类",
"存款金额",
"存款人",
"存款账号"
FROM
"银行存款日报表"
WHERE
"日期" = TO_DATE('2021-01-02', 'YYYY-MM-DD') -- 当日数据
) a
LEFT JOIN
(
SELECT
"存款种类",
"存款金额"
FROM
"银行存款日报表"
WHERE
"日期" = TO_DATE('2021-01-01', 'YYYY-MM-DD') -- 昨日数据
) b
ON
a."存款种类" = b."存款种类"
ORDER BY
a."存款种类";
```
解释一下上述 SQL 语句的作用:
1. 首先,我们使用子查询 `a` 获取当日的银行存款日报信息,其中日期为 2021 年 1 月 2 日。
2. 然后,我们使用子查询 `b` 获取昨日的银行存款信息,其中日期为 2021 年 1 月 1 日。这里使用了 `LEFT JOIN` 连接两个子查询,以便在 `a` 中获取不到的存款种类也能被显示出来。
3. 最后,我们在 SELECT 语句中将 `b."存款金额"` 作为昨日存款金额列显示出来,并按照存款种类进行排序。
希望以上内容能对您有所帮助。
阅读全文
相关推荐














