0
我有一個表名table1的SQL轉置樞軸? UNPIVOT?
Partnumber | Model
12345 | A1
12345 | B2
12345 | C3
,我想我的輸出是:
Partnumber | Model1 | Model2 | Model3
12345 | A1 | B2 | C3
隨着模型中的列N是動態的。
任何想法?
我有一個表名table1的SQL轉置樞軸? UNPIVOT?
Partnumber | Model
12345 | A1
12345 | B2
12345 | C3
,我想我的輸出是:
Partnumber | Model1 | Model2 | Model3
12345 | A1 | B2 | C3
隨着模型中的列N是動態的。
任何想法?
您可以使用動態條件彙總:數百個這樣的例子對SO
DECLARE @sql NVARCHAR(MAX) = N'';
SELECT @sql =
'SELECT
PartNumber' + CHAR(10) +
STUFF((
SELECT DISTINCT
' ,MAX(CASE WHEN Model = ''' + Model + ''' THEN Model END) AS ' + QUOTENAME(Model) + CHAR(10)
FROM Tbl
FOR XML PATH('')
), 1, 0, '') +
'FROM Tbl
GROUP BY PartNumber;';
PRINT @sql;
EXEC sp_executesql @sql;
..... – scsimon