獲得日期的周次
select to_char(to_date('2007-05-21','yyyy-mm-dd'),'yyyyww') from dual;
select to_char(to_date('2007-05-27','yyyy-mm-dd'),'yyyyww') from dual;
結果:200721
反轉計算:
select to_date(substr('200721',0,4)||'0101','yyyymmdd')+to_number(substr('200721',5,2))*7-1 as weekfirstdate from dual;
select to_date(substr('200721',0,4)||'0101','yyyymmdd')+to_number(substr('200721',5,2))*7-1 as weekfirstdate from dual;
開發中需要用到乙個查詢周的第一天日期的函式 搜尋n久很難找到解決的方法 只要自己寫乙個先用著 **如下 a_week格式為 'yyyyiw' 如 '200801'表示2023年的第一周
周使用iw方式計算 如果一年當中第52周別之後至當年的12月31日之間,還有大於或等於4天的話,則定為當年的第53周,否則剩餘這些天數被歸為下一年的第1周
create
orreplace
function f_week_to_date(a_week varchar2) return
char
isv_first_date char (10);
v_date_of_week number(1);
begin
select to_char(to_date(substr(a_week, 1, 4) || '0101' , 'yyyymmdd' ), 'd' )
into v_date_of_week
from dual;
v_date_of_week := v_date_of_week - 1;
if v_date_of_week <= 4 then
select to_char(to_date(substr(a_week, 1, 4) || '0101' , 'yyyymmdd' ) +
substr(a_week, 5, 2) * 7 - 7 - v_date_of_week + 1,
'yyyy-mm-dd' )
into v_first_date
from dual;
else
select to_char(to_date(substr(a_week, 1, 4) || '0101' , 'yyyymmdd' ) +
substr(a_week, 5, 2) * 7 - v_date_of_week + 1,
'yyyy-mm-dd' )
into v_first_date
from dual;
end if;
return v_first_date;
end ;
獲得日期的年周次並且反算回日期
獲得日期的周次 select to char to date 2007 05 21 yyyy mm dd yyyyww from dual select to char to date 2007 05 27 yyyy mm dd yyyyww from dual 結果 200721 反轉計算 sel...
JS計算當前日期的周次
函式 function getweek z var now date.parse z now new date now now.sethours 0 now.setminutes 0 now.setseconds 0 var nowmill now.gettime var now day now.g...
php中獲得中國式的周的日期方式
php中有的時候想獲取某周的開始和結束日期,不是很方便,於是自己收拾了一套。日期轉換成中國式的周一和週日,num 1預設返回本週周一和週日的日期 0表示上週 1表示上上週 2表示下週 3表示下下週 以此類推 public static function dealdate num 1 start nu...