sql - 如何在sql查询中从起始年份获取每年的金额
问题描述
我需要一个查询来获得从合同开始日期起每年的总金额。
例如:如果合同于 2018 年开始并于 2020 年结束,那么我需要在选择查询中每年的到期金额总和。
select annual_amount_1,annual_amuont2_annual_amount_3
from dual..
Here i need o/p in annual_amount_1 as-> sum(due_amount_in 2018)
annual_amount_2 as-> sum(due_amount_in 2019)
annual_amount_3 as-> sum(due_amount_in 2020)
如何在选择查询中实现这一点
解决方案
create table t1 (
d DATE,
a NUMBER
);
INSERT into t1 (d, a) VALUES (DATE '2020-08-01', 22);
INSERT into t1 (d, a) VALUES (DATE '2020-09-01', 42);
INSERT into t1 (d, a) VALUES (DATE '2021-08-01', 111);
INSERT into t1 (d, a) VALUES (DATE '2021-09-01', 222);
SELECT to_char(d, 'YYYY') as year, SUM(a) sum from t1
GROUP by to_char(d, 'YYYY')
Order by to_char(d, 'YYYY')
推荐阅读
- javascript - Vue - 是否可以在组件的计算属性中使用 Vuex getter?
- javascript - rm -rf 不显示任何错误但不删除任何文件 VS Code
- android - adb - 添加 PIN 但不安全启动的脚本
- java - 如何通过 HSSFWorkbook 设置图像大小
- apache-kafka - Kafka文件流连接和流API
- python - 来自 Automate Boring Stuff With Python 的任务。5
- visual-studio-code - 以编程方式在源代码控制消息输入框中设置焦点(vs code API)
- python - 为什么解包在 Python 中给出一个列表而不是一个元组?
- scala - 检查条件中的加特林 for 循环
- python - 比较单个数据框中相同变量的 2 个值