Oracle获取每月最后一天
时间: 2024-10-22 12:05:42 浏览: 25
oracle统计时间段内每一天的数据(推荐)
Oracle数据库中,如果你想获取每个月的最后一天,可以使用`LAST_DAY()`函数。这个函数返回传入日期之后的第一个月份的第一天,也就是该月的最后一天。基本语法如下:
```sql
SELECT LAST_DAY(to_date('your_date', 'YYYY-MM-DD'))
FROM dual;
```
在这个例子中,`to_date('your_date', 'YYYY-MM-DD')`是一个日期格式化函数,将字符串转换成日期格式,然后`LAST_DAY()`函数会计算出该日期所在月份的最后一天。
如果你想要获取特定年份的每个月最后一天,可以配合`CONNECT_BY_MONTHS`操作符:
```sql
SELECT add_months(sysdate, -level) as last_day
FROM dual
连接 (
SELECT level
FROM dual
START WITH level = 0
CONNECT BY level + 1 <= 12
)
WHERE MONTH(LAST_DAY(add_months(sysdate, -level))) = MONTH(sysdate);
```
这将返回当前年份的每个月的最后一天。
阅读全文