我需要在年份和季度中顯示分配成員資格。我使用SQL Server 2012的如何在T-SQL中將一行中的時間範圍拆分爲不同行中的不同季度
的數據是這樣的:
CREATE TABLE MyTable
(
MyGroup nvarchar(10) NULL,
StartTime nvarchar(10) NULL,
EndTime nvarchar (10) NULL,
Quantity int NULL
)
Insert into MyTable
Values ('a', '7/1/2014', '6/30/20116', '10'),
('b', '12/1/2013', '11/30/2014', '8')
期望的結果:
MyGroup StartTime EndTime Year Quarter Quantity
a 7/1/2014 6/30/2016 2014 2014-Q3 10
a 7/1/2014 6/30/2016 2014 2014-Q4 10
a 7/1/2014 6/30/2016 2015 2015-Q1 10
a 7/1/2014 6/30/2016 2015 2015-Q2 10
a 7/1/2014 6/30/2016 2015 2015-Q3 10
a 7/1/2014 6/30/2016 2015 2015-Q4 10
a 7/1/2014 6/30/2016 2016 2016-Q1 10
a 7/1/2014 6/30/2016 2016 2016-Q2 10
b 12/1/2013 11/30/2014 2013 2013-Q4 8
b 12/1/2013 11/30/2014 2014 2014-Q1 8
b 12/1/2013 11/30/2014 2014 2014-Q2 8
b 12/1/2013 11/30/2014 2014 2014-Q3 8
你應該類型的列['DATE'](https://msdn.microsoft.com/en-us/library/bb630352.aspx),而不是使用'VARCHAR'被存儲日期。如果你不這樣做(你應該真的),至少將你的日期存儲爲'YYYYMMDD'。 –