a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 數據庫 > Oracle > 正文

oracle獲取上一旬的開始時間和結束時間的實現函數

2024-08-29 13:57:02
字體:
來源:轉載
供稿:網友

復制代碼 代碼如下:


-- 獲取上旬開始時間
create or replace function fd_lastxunstart(rq in date) return string is
refstr varchar2(50);
v_rq date;
begin
--獲取上一旬的日期
v_rq := trunc(rq);
select case decode(trunc((to_char(v_rq, 'dd') - 1) / 10),
0,
'上旬',
1,
'中旬',
'下旬')
when '上旬' then --返回上個月的下旬
to_char(add_months(v_rq, -1), 'yyyyMM') || '21'
when '中旬' then
to_char(v_rq, 'yyyymm') || '01' else 
to_char(v_rq, 'yyyymm') || '11'
end
into refstr
from dual;
return refstr;
end fd_lastxunstart;

-- 這個返回的是:上旬的開始日期
select sysdate from dual;
select fd_lastxunstart(sysdate) from dual;
select fd_lastxunstart(to_date('20130305','yyyymmdd')) from dual;
select fd_lastxunstart(to_date('20130311','yyyymmdd')) from dual;
select fd_lastxunstart(to_date('20130325','yyyymmdd')) from dual;

-- 執行結果為: 2013/9/5 12:08:39、20130821、20130221、20130301、20130311

---- 獲取上一旬的結束日期
-- 傳遞進去 一個 date 類型的值,返回一個varchar類型的上旬結束日期
create or replace function fd_lastxunend(rq in date) return string is
refstr varchar2(50);
v_rq date;
begin
--獲取上一旬的日期
v_rq := trunc(rq);
select case decode(trunc((to_char(v_rq, 'dd') - 1) / 10),
0,
'上旬',
1,
'中旬',
'下旬')
when '上旬' then --返回上個月的最后1天
--chr(39) 這個是加引號
to_char(last_day(add_months(v_rq, -1)) + 1 - 1 / 24 / 60 / 60,
'yyyymmdd')
when '中旬' then
to_char(v_rq, 'yyyymm') || '10' else 
to_char(v_rq, 'yyyymm') || '20'
end
into refstr
from dual;
return refstr;
end fd_lastxunend;

-- 這個獲取的是:上旬的結束日期
select fd_lastxunend(sysdate) from dual;
select fd_lastxunend(to_date('20130305','yyyymmdd')) from dual;
select fd_lastxunend(to_date('20130311','yyyymmdd')) from dual;
select fd_lastxunend(to_date('20130315','yyyymmdd')) from dual;
select fd_lastxunend(to_date('20130221','yyyymmdd')) from dual;

--執行結果:20130831、20130228、20130310、20130310、20130220

-- 觀察 1 / 24 / 60 / 60 的作用 這個是一秒
select last_day(add_months(trunc(sysdate), -1)) + 1 - 1 / 24 / 60 / 60
from dual;
select last_day(add_months(trunc(sysdate), -1)) from dual;
select last_day(add_months(trunc(sysdate), -1)) + 1 from dual;
-- 執行結果:2013/8/31 23:59:59、2013/8/31、2013/9/1

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 在线观看不卡一区 | 亚洲午夜精品一区二区三区 | 成人在线国产精品 | 黄色影视免费观看 | 精品一区二区久久久久久久网站 | 日韩免费在线播放 | 波多野结衣 一区二区三区 国产在线中文字幕 | 91香蕉嫩草 | 狠狠色狠狠色合久久伊人 | 国产精品毛片大码女人 | 91久久精品久久国产性色也91 | 午夜av在线| 四虎5151久久欧美毛片 | 精品久久久久一区二区国产 | 中国黄色一级毛片 | 热re99久久精品国99热线看 | 99久久综合国产精品二区 | 久久久久一区二区三区 | 爱爱爱av | 超碰97av| 看黄网址| 国产精品理论片在线观看 | 成人在线视频免费观看 | 四虎成人在线播放 | 自拍偷拍欧美日韩 | 日韩av一区二区三区在线 | 日韩欧美不卡 | 91在线精品秘密一区二区 | 青青青国产 | 中文字幕播放 | 中文字幕视频 | 一区二区三区免费看 | 国产日韩视频在线 | 国产免费黄色 | 日本黄色大片免费 | 嫩草影院在线观看91麻豆 | 人人人人澡 | 99re视频| 日韩国产一区二区三区 | 欧美www.| 日韩精品一区二区三区在线 |