我怎样才能得到上周的日期? 例如: 今天是2015年2月4日, 我想要查询从1月31日到1月1日开始的上周。 这个日期是动态的。例如,今天是2014年2月13日,上周是1月1日至1月7日。 感谢..
答案 0 :(得分:0)
我将假设 31月1日到1月1日位是一个错字。请查看NEXT_DAY
method
例如:
select trunc(to_date('13-FEB-2015', 'DD-MON-YYYY')) today,
next_day(trunc(to_date('13-FEB-2015', 'DD-MON-YYYY'))-1, 'SUNDAY')-14 last_sunday,
next_day(trunc(to_date('13-FEB-2015', 'DD-MON-YYYY'))-1, 'SATURDAY')-7 last_saturday
from dual;
输出(原因是列格式化):
TODAY LAST_SUND LAST_SATU
--------- --------- ---------
13-FEB-15 01-FEB-15 07-FEB-15
所以你可以传递你想要的任何日期,它仍然可以让你在星期日之前,然后是星期六之前。星期六。 2015年2月25日的例子:
TODAY LAST_SUND LAST_SATU
--------- --------- ---------
25-FEB-15 15-FEB-15 21-FEB-15