0

我有一列返回月份的整数,即 7 月份的整数。我想做的是取这个 7 并返回月底,即 2012 年 7 月 31 日,是否有允许我在 SQL 中执行此操作的函数?

谢谢

4

2 回答 2

3

像这样的东西怎么样:

DECLARE @Month int
DECLARE @Year int

set @Month = 7
set @Year = datepart(year,getdate())

select DATEADD(day,-1,DATEADD(month,@Month,DATEADD(year,@Year-1900,0))) 

结果:

2012-07-31 00:00:00.000
于 2012-08-14T14:12:01.640 回答
1

看看这个;

http://blog.sqlauthority.com/2007/08/18/sql-server-find-last-day-of-any-month-current-previous-next/

这是您感兴趣的部分;

SELECT DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE()),0))
于 2012-08-14T14:11:24.367 回答