У меня есть следующий сценарий.T-SQL | Dynamic Transpose
CREATE TABLE #Temp1 (ID INT , Summary varchar(50))
CREATE TABLE #Temp2 (ID INT , D_ID INT, Detail1 varchar(50), Detail2 varchar(50))
INSERT INTO #Temp1 (ID,Summary)
SELECT 1,'First'
UNION ALL
SELECT 2,'Second'
UNION ALL
SELECT 3,'Third'
UNION ALL
SELECT 4,'Four'
INSERT INTO #Temp2 (ID, D_ID, Detail1,Detail2)
SELECT 1,1,'One','_1_'
UNION ALL
SELECT 2,2,'Two','_2_'
UNION ALL
SELECT 2,3,NULL,'_3_'
UNION ALL
SELECT 3,4,'Three',NULL
UNION ALL
SELECT 3,5,NULL,NULL
UNION ALL
SELECT 3,6,'Three_2','_32_'
DROP TABLE #Temp1
DROP TABLE #Temp2
Я ищу следующий результат.
S_ID, S_Summary, D_Detail1_1, D_Detail1_2, D_Detail2_1, D_Detail2_2, D_Detail3_1, D_Detail3_2...)
1, First, One, _1_ NULL NULL NULL NULL...
2, Second, Two, _2_ NULL _3_ NULL NULL...
3, Third, Three, NULL NULL NULL Three_2 _32_...
4, Four, NULL, NULL NULL NULL NULL NULL...
В таблице Summary и Detail может быть один-много отношений и может варьироваться в количестве подробных записей (динамических).
Я не уверен, как это сделать, так как это будет динамично и все же получить желаемый результат. PIVOT требует определенного набора строк для переноса его в столбцы, если я не ошибаюсь. Любая помощь будет оценена по достоинству.
Я считаю, что это можно сделать с помощью 'left join'. –
моя ошибка ... неправильный желаемый выход..Обновлен :) – 007
Что заказывают? –