有没有办法从其他列创建日期列?

时间:2015-10-20 18:53:59

标签: sql-server reporting-services

正如标题所说,我可以从两个字段创建一个新列吗?例如,我从主值表创建了一个新列来表示月份,我有另一个列与年份。我可以将它们结合起来创建一个日期吗?我所拥有的是左侧,我想要的是右侧:

Month    Year                            NewDate
----     ----                            -------
 3       2015                            2015-03-01
 4       2015                            2015-04-01

每当我尝试将月份作为日期时间时,它将如下所示:

1900-01-03

这可能是一个愚蠢的问题,但我创建了一个列出月份的时间表,只要选择的结束日期参数小于开始日期参数(例如2015年12月到2016年1月),就会遇到麻烦。我创建了在SSRS中报告并且参数不能正常工作。多谢你们! 另外,这里是时间轴的快照:

enter image description here

2 个答案:

答案 0 :(得分:1)

SELECT
  DATEFROMPARTS ( [Year], [Month], 1 ) AS NewDate
FROM
  YourTable
;

答案 1 :(得分:0)

select dateadd(mm, t.Month -1, dateadd(yy,t.Year-1900,'19000101'))
from table1 t