有没有办法根据用户月份和年份生成日期, 我需要一个结果表,有2列一个startdate和enddate应该有月,tomonth和年。 请参阅示例中显示的表结构和结果表格式。
example:
co1 col2 col3
fromMonth toMonth year
5 12 2012
1 4 2013
result:
co1 col2
StartDate EndDate
01/05/2012 31/12/2012
01/01/2013 30/04/2013
答案 0 :(得分:0)
我猜你可以使用DATEFROMPARTS并传递月份&年专栏
答案 1 :(得分:0)
这是一种方法:
DECLARE @tbl TABLE (fromMonth INT, toMonth INT, year INT)
INSERT @tbl VALUES
(5 ,12 ,2012),
(1 ,4 ,2013)
SELECT DATEADD(MONTH, (YEAR - 1900) * 12 + fromMonth - 1, '1900-01-01') StartDate
, DATEADD(DAY, -1, DATEADD(MONTH, (YEAR - 1900) * 12 + toMonth, '1900-01-01')) EndDate
FROM @tbl
答案 2 :(得分:0)
开始日期:
CAST(CAST(1 AS varchar) + '/' + CAST(col1 AS varchar) + '/' + CAST(col3 AS varchar) AS DATETIME)
结束日期:
CAST(CAST(31 AS varchar) + '/' + CAST(col2 AS varchar) + '/' + CAST(col3 AS varchar) AS DATETIME)
我希望这会对你有所帮助。