【发布时间】:2018-08-12 13:19:52
【问题描述】:
我正在使用 Oracle SQL。
我正在尝试获取当前月份和去年的所有记录。
示例:这是 8 月 12 日,所以我想要 2017 年 8 月 1 日至 12 日的所有记录
查询获取了我 2018 年当月的所有记录。
BETWEEN trunc (sysdate, 'mm') AND SYSDATE
去年如何做同样的事情?
【问题讨论】:
我正在使用 Oracle SQL。
我正在尝试获取当前月份和去年的所有记录。
示例:这是 8 月 12 日,所以我想要 2017 年 8 月 1 日至 12 日的所有记录
查询获取了我 2018 年当月的所有记录。
BETWEEN trunc (sysdate, 'mm') AND SYSDATE
去年如何做同样的事情?
【问题讨论】:
您可以使用ADD_MONTHS函数获取12个月前的数据:
Between trunc(ADD_MONTHS(sysdate,-12),'mm') and trunc(ADD_MONTHS(sysdate,-11),'mm')
【讨论】:
你可以这样做:
where date >= trunc(sysdate, 'mon') - interval '12' month and
date < trunc(sysdate, 'mon') - interval '11' month
【讨论】: