如何从datetime值计算月中的最后一天

Nob*_*ody 1 sql sql-server

可能重复:
如何计算SQL中月份的最后一天?

SQL新手,但是如何从datetime(trans_date)确定月份值的最后一天.

对不起只是一个愚蠢的问题,但我可以从trans表中指定trans_date(date)而不是使用当前日期

Jam*_*iec 5

轻松,找到下个月的第一个并减去1天.

例如,

DECLARE @dt AS DATETIME = GetDate();
SELECT DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,@dt)+1,0))
Run Code Online (Sandbox Code Playgroud)

编辑:如果您从表中选择,请执行以下操作:

SELECT 
  SomeColumn,
  DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,SomeColumn)+1,0)) AS EndOfMonth
FROM SomeTable
Run Code Online (Sandbox Code Playgroud)