Oracle从上星期一到周末日期获取查询SQL语句。
- Oracle从星期一开始到周末
-一周需要几天,从星期日开始。
选择to_char(to_date('20130906 ','yyyymmdd),会从双);
结果:6注:2013.09.06是星期五,每周第六天的
选择to_char(SYSDATE +(2-to_char(SYSDATE,会'))- 7,'yyyymmdd ')-上星期一从双;
选择to_char(SYSDATE +(2-to_char(SYSDATE,会'))- 1,'yyyymmdd ')-上星期日从双;
-返回日期类型的简单方式
选择trunc(SYSDATE,'iw)- 7 -上星期一从双;
选择trunc(SYSDATE,'iw)- 1双;——上星期日
-今天是星期一
选择trunc(SYSDATE,'iw)从双;
选择trunc(to_date('20130915 ','yyyymmdd),'iw)从双;
-结果:2013 9 9注:星期日20130915
-返回char类型
选择to_char(trunc(SYSDATE,'iw)- 7,'yyyymmdd ')--上星期一从双;
选择to_char(trunc(SYSDATE,'iw)- 1,'yyyymmdd ')--上星期日从双;
-得到上星期一的功能
创建或替换功能fun_acc_getlastweekstart(系统日期日期)
返回VARCHAR2是
result_str VARCHAR2(15);
开始
选择to_char(trunc(系统日期,'iw)- 7,'yyyymmdd)
为result_str
从双;
返回result_str;
最后fun_acc_getlastweekstart;
-得到上星期日的功能
创建或替换功能fun_acc_getlastweekend(系统日期日期)返回VARCHAR2是
result_str VARCHAR2(15);
开始
选择to_char(trunc(系统日期,'iw)- 1,'yyyymmdd)
为result_str
从双;
返回result_str;
最后fun_acc_getlastweekend;
-测试这个函数
选择fun_acc_getlastweekstart(SYSDATE)从双;
选择fun_acc_getlastweekend(SYSDATE)从双;
选择fun_acc_getlastweekstart(to_date('20130915 ','yyyymmdd '))从双;
选择fun_acc_getlastweekend(to_date('20130915 ','yyyymmdd '))从双;
-查询结果:20130826, 20130901, 20130902,20130908
-注意:
从双选择sysdate;
查询结果:2013 / 9 / 6 9:45:14