【发布时间】:2019-05-15 08:01:55
【问题描述】:
我每月运行一次查询以选择 基于月份 JAN、FEB、MAR、APR、SEP 的数据 十月、十一月、十二月。
假设我在 2018 年 2 月运行此查询,然后是数据 JAN 和 FEB 的数据应来自当年(2018 年),数据来自 MAR、APR、SEP OCT、NOV、DEC 应来自上一年(2017 年)。我如何使用 SYSDATE 处理这个问题。
>SELECT * FROM MY_TABLE WHERE MONTH_NAME
IN ('JAN','FEB','MAR','APR','SEP','OCT','NOV','DEC')
AND
YEAR=TO_CHAR(TRUNC(SYSDATE),'YYYY');
假设我有列 MONTH_NAME 具有所有月份名称和 YEAR 与年份匹配记录。
【问题讨论】:
-
请告诉规则,在什么情况下您只需要当年的数据,以及什么时候需要以前和当前的数据。
-
另外添加一些示例数据和预期结果。
标签: oracle oracle11g oracle10g