例如,给定的日期是04/04/1924,我想找出1924年2月的最后一天.
我提出了add_month,但如果我从数据源获得不同的月份,它似乎不灵活
有什么好主意吗?
Mit*_*eat 39
Oracle有一个last_day()功能:
SELECT LAST_DAY(to_date('04/04/1924','MM/DD/YYYY')) from dual;
SELECT LAST_DAY(ADD_MONTHS(to_date('04/04/1924','MM/DD/YYYY'), -1)) from dual;
SELECT LAST_DAY(ADD_MONTHS(to_date('04/04/1924','MM/DD/YYYY'), -2)) from dual;
Run Code Online (Sandbox Code Playgroud)
结果:
April, 30 1924 00:00:00+0000
March, 31 1924 00:00:00+0000
February, 29 1924 00:00:00+0000
Run Code Online (Sandbox Code Playgroud)
Add_Months()在您的日期使用以获得适当的月份,然后申请last_day().