sql server 获得最后一天
时间: 2023-07-04 17:31:18 浏览: 60
你可以使用 SQL Server 中的 DATEADD 和 DAY 函数来获得当前月份的最后一天。下面是一个示例查询:
```
SELECT DATEADD(day, -1, DATEADD(month, DATEDIFF(month, 0, GETDATE()) + 1, 0))
```
该查询中,`GETDATE()` 函数返回当前日期时间,`DATEDIFF()` 函数计算当前月份与 1900-01-01 之间的月数,`DATEADD()` 函数将月数加回来并返回下一个月的第一天,然后再将一天减去,即得到当前月份的最后一天。
相关问题
sql server 获得上月最后一天
你可以使用以下 SQL 查询来获取上个月的最后一天:
```
SELECT DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE()),0))
```
这个查询首先获取当前日期,然后使用 `DATEDIFF` 函数计算出这一年的月数,使用 `DATEADD` 函数将计算出的月数加到基准日期(1900年1月1日)上,然后再次使用 `DATEADD` 函数在月份的基础上添加一天,并减去一秒钟,以获取上个月的最后一天。
sqlserver取当月最后一天
可以使用以下 SQL 语句获取当前日期所在月份的最后一天:
```
SELECT DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE())+1,0))
```
解释如下:
1. `DATEDIFF(m,0,GETDATE())` 获取当前日期与 1900 年 1 月 1 日之间相差的月份数;
2. `DATEADD(m, DATEDIFF(m,0,GETDATE())+1,0)` 获取当前月份的第一天;
3. `DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE())+1,0))` 获取当前月份的最后一天,即下一个月的第一天减去一秒钟。