私はTransDateStringとTransDateの2つの列を持つデータセットを持っています。私がやろうとしている何私のt-SQLクエリの一部で結果が無効
TransDate | TransDateString
2011-1-4 | 1-2011
2004-6-5 | 6-2004
2010-10-14| 10-2010
2012-7-21 | 7-2012
2010-10-11| 10-2010
2012-7-5 | 7-2012
がTRANSDATEによって順に変数にTransDateStringを取得することです:
SET @cols = STUFF((
SELECT ',' + QUOTENAME(A.TransDateString) FROM
(
Select c.TransDateString,
Row_Number() Over (Partition By c.TransDateString Order By c.TransDate asc) RowNum
FROM #dataSet c
) A
Where RowNum = 1
FOR XML PATH(''), TYPE
).value('.', 'NVARCHAR(MAX)')
,1,1,'')
このデータは次のようになりますので、TransdateStringは、単にTRANSDATEのnvarchar型バージョンです動作しますが、順不同です。実行時に、私は@cols=[[1-2011],[10-2010],[6-2004],[7-2012]]
SQL Server 2106には[STRING_AGG](https://msdn.microsoft.com/en-us/library/mt790580.aspx)メソッドがあります。どのSQL Serverのバージョンを使用していますか? –
SQL Server 2008 R2はサポートされなくなりました。アップグレードする時間。 BTW [2016 SP1](https://sqlperformance.com/2016/11/sql-server-2016/big-deal-sp1)は、メモリ内のテーブル、圧縮、カラムストアインデックス、パーティションをExpress EditionおよびLocalDb –