我有两个字段,期间和YR,期间代表月份。我希望能够选择这些记录作为日期字段,并假设该日是该月的最后一天。例如:
YR Period Date
2017 1 2017-01-31
2017 2 2017-02-28
Etc
我对如何去做这件事感到茫然。感谢您的任何帮助,您可以提供。
答案 0 :(得分:5)
SELECT YR, Period, EOMONTH(DATEFROMPARTS(YR, Period, 1)) AS [Date]
FROM <<table>>
答案 1 :(得分:1)
这就是你如何使用&#34; basic&#34;功能:
<iisnode idontexist="12" />
答案 2 :(得分:0)
这是另一个问题:
WITH tb(YR,Period)AS(
SELECT 2017,1 UNION ALL
SELECT 2017,2 UNION ALL
SELECT 2017,3
)
SELECT DATEADD(DAY,-1,DATEADD(MONTH,tb.Period+1, DATEADD( YEAR, YR-1900,0))) FROM tb
----------------------- 2017-02-28 00:00:00.000 2017-03-31 00:00:00.000 2017-04-30 00:00:00.000