首页 > 解决方案 > 需要在oracle sql中获取上一财年数据

问题描述

我如何编写 SQL 来获取去年的数据。例如,如果我今天(07-02-2020)运行这个 sql,那么它应该给我从 01-01-2019 到 31-12-2019 的 lcy_amt 数据总和;

trn_date      lcy_amount

08-01-2020    200
08-01-2019    100
02-11-2020    150

请协助。

标签: sqloracle

解决方案


您可以使用以下查询:

SELECT SUM(lcy_amount)
FROM yourtable
WHERE trn_date >= TRUNC(SYSDATE, 'YEAR') - INTERVAL '1' YEAR 
  AND trn_date < TRUNC(SYSDATE, 'YEAR') 

@nick 答案中的第二个查询将排除 2019 年 12 月 31 日,因为它应该WHERE trunc(trn_date) ...trn_date = 31-dec-2019 00:00:01 to 31-dec-2019 23:59:59排除在结果之外。

干杯!!


推荐阅读