如何检查输入日期的DAY是否是SQL中给定月份的最后一天?

RJ.*_*RJ. 0 sql sql-server datepart

DECLARE @Date DATE = '2/28/2014'
Run Code Online (Sandbox Code Playgroud)

我需要测试上面日期的DAY是否是该月的最后一天,它应该适用于一年中的所有月份.

如果是真的,那么我需要返回一个true,如果没有,那么就是false.

例如

SET @Date = '2/27/2014'
Run Code Online (Sandbox Code Playgroud)

这应该返回FALSE.

SET @Date = '12/31/2014'
Run Code Online (Sandbox Code Playgroud)

这应该返回TRUE.

我知道你可以根据月份操纵这个,但我只是想知道是否有一个简单的方法来做到这一点.

Gor*_*off 8

在几乎任何版本的SQL Server中都可以使用的简单方法是:

select (case when month(@date) <> month(dateadd(day, 1, @date))
             then 'true' else 'false'
         end)
Run Code Online (Sandbox Code Playgroud)

也就是说,添加一天,看看你是否在同一个月.这适用于闰年和12月31日等.