2019-08-27

【Oracle】取得指定月份的天數



 
-- 這是轉成字元
SELECT TO_CHAR(LAST_DAY(TO_DATE('2016/02/01', 'yyyy/mm/dd')), 'dd') days FROM dual

-- 語法 1, 若要轉成數字運算, 偷吃步, 加 0 就行了
SELECT (TO_CHAR(LAST_DAY(TO_DATE('2016/02/01', 'yyyy/mm/dd')), 'dd')+0) days FROM dual

-- 語法 2
SELECT EXTRACT(DAY FROM LAST_DAY(TO_DATE('2016/02', 'yyyy/mm'))) daycnt FROM dual
 

因為 2016 年是閏年,所以 2 月會有 29