MS SQL - 将两个整数列组合为日期

时间:2017-02-21 08:07:23

标签: sql-server-2008 date integer

我有一个日期的TDate专栏。我想按月和年分组数据,所以在我的选择查询中,我有TMonth和TYear列(选择DATEPART(mm,TDate)作为TMonth,DATEPART(yyyy,TDate)作为来自MyTable的TYear)。两者现在都是整数。现在,我想使用mm / dd / yyyy格式的选择查询将其组合在一列中。 dd应该是TMonth的最后一天。

如何使用select sql查询完成?请帮忙。先感谢您。 :)

2 个答案:

答案 0 :(得分:1)

"现代"自2012年以来,SQL Server版本具有可用于创建日期的datefromparts函数:

SELECT DATEFROMPARTS(TYear, TMonth, 1)
FROM   mytable

答案 1 :(得分:1)

使用
得到它 选择DATEPART(mm,TDate)作为TMonth,DATEPART(yyyy,TDate)作为TYear, DATEADD(d,-1,DATEADD(m,DATEDIFF(m,0,TDate)+ 1,0))来自MyTable