oracle

推荐列表 站点导航

当前位置:首页 > 数据库 > oracle >

Oracle 获取上周一到周末日期的查询sql语句

来源:网络整理  作者:网络  发布时间:2020-12-11 11:45
本文为大家介绍下Oracle如何取得上周一到周末日期的查询语句,感兴趣的朋友可以聊接下...

end fun_acc_getlastweekstart;

--查询结果:2013/9/6 9:45:14
select fun_acc_getlastweekend(sysdate) from dual;
create or replace function fun_acc_getlastweekend(systemdate in date) return varchar2 is
create or replace function fun_acc_getlastweekstart(systemdate in date)
into result_str


result_str varchar2(15);
-- 返回char类型
from dual;
select to_char(trunc(sysdate,'iw') - 7,'yyyymmdd') from dual;--上周一
result_str varchar2(15);
-- 测试这个函数
select trunc(to_date('20130915','yyyymmdd'),'iw') from dual;
select trunc(sysdate,'iw') from dual;

复制代码 代码如下:

select to_char(sysdate+(2-to_char(sysdate,'d'))-7,'yyyymmdd') from dual;---上周一
-- 获取上周一的函数
return varchar2 is
select sysdate from dual;
into result_str


select trunc(sysdate,'iw') - 1 from dual;--上周日
return result_str;
begin
-- 这样查出来是本周一

-- Oracle 取上周一到周末的sql

return result_str;
select fun_acc_getlastweekend(to_date('20130915','yyyymmdd')) from dual;
select to_char(trunc(systemdate, 'iw') - 1, 'yyyymmdd')
select fun_acc_getlastweekstart(sysdate) from dual;
select to_char(trunc(sysdate,'iw') - 1,'yyyymmdd') from dual;--上周日
select to_char(sysdate+(2-to_char(sysdate,'d'))-1,'yyyymmdd') from dual;---上周日
--结果:6 注释:2013.09.06是周五,为本周的第六天

-- 结果:2013/9/9 注释:20130915 为周日


select fun_acc_getlastweekstart(to_date('20130915','yyyymmdd')) from dual;
from dual;
-- 注:
begin
-- 获取上周日的函数

select trunc(sysdate,'iw') - 7 from dual;---上周一
select to_char(trunc(systemdate, 'iw') - 7, 'yyyymmdd')
--查询结果:20130826、20130901、20130902、20130908
-- 这样取的是 在一周内第几天,是以周日为开始的
select to_char(to_date('20130906','yyyymmdd'),'d') from dual;
-- 一个更简单的写法 , 返回date类型
end fun_acc_getlastweekend;

相关热词: oracle SQL语句

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://v30.fanwenzhu.com/sql/oracle/2544.shtml

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

Oracle 获取上周一到周末日期的查询sql语句

2020-12-11 编辑:网络


end fun_acc_getlastweekstart;

--查询结果:2013/9/6 9:45:14
select fun_acc_getlastweekend(sysdate) from dual;
create or replace function fun_acc_getlastweekend(systemdate in date) return varchar2 is
create or replace function fun_acc_getlastweekstart(systemdate in date)
into result_str


result_str varchar2(15);
-- 返回char类型
from dual;
select to_char(trunc(sysdate,'iw') - 7,'yyyymmdd') from dual;--上周一
result_str varchar2(15);
-- 测试这个函数
select trunc(to_date('20130915','yyyymmdd'),'iw') from dual;
select trunc(sysdate,'iw') from dual;

复制代码 代码如下:

select to_char(sysdate+(2-to_char(sysdate,'d'))-7,'yyyymmdd') from dual;---上周一
-- 获取上周一的函数
return varchar2 is
select sysdate from dual;
into result_str


select trunc(sysdate,'iw') - 1 from dual;--上周日
return result_str;
begin
-- 这样查出来是本周一

-- Oracle 取上周一到周末的sql

return result_str;
select fun_acc_getlastweekend(to_date('20130915','yyyymmdd')) from dual;
select to_char(trunc(systemdate, 'iw') - 1, 'yyyymmdd')
select fun_acc_getlastweekstart(sysdate) from dual;
select to_char(trunc(sysdate,'iw') - 1,'yyyymmdd') from dual;--上周日
select to_char(sysdate+(2-to_char(sysdate,'d'))-1,'yyyymmdd') from dual;---上周日
--结果:6 注释:2013.09.06是周五,为本周的第六天

-- 结果:2013/9/9 注释:20130915 为周日


select fun_acc_getlastweekstart(to_date('20130915','yyyymmdd')) from dual;
from dual;
-- 注:
begin
-- 获取上周日的函数

select trunc(sysdate,'iw') - 7 from dual;---上周一
select to_char(trunc(systemdate, 'iw') - 7, 'yyyymmdd')
--查询结果:20130826、20130901、20130902、20130908
-- 这样取的是 在一周内第几天,是以周日为开始的
select to_char(to_date('20130906','yyyymmdd'),'d') from dual;
-- 一个更简单的写法 , 返回date类型
end fun_acc_getlastweekend;

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://v30.fanwenzhu.com/sql/oracle/2544.shtml

相关文章

风云图片

推荐阅读

返回oracle频道首页