У меня есть таблица с 2 столбцами, первый столбец называется ID
, а второй называется TRACKING
.В столбце ID
есть дубликаты, я хочу взять все эти дубликаты и объединить их в одну строку, где каждое значение из TRACKING
из дублирующейся строки помещается в новый столбец в той же строке, и у меня больше нет дубликатов..
Я попробовал несколько предложенных вещей, где все значения будут объединены в один столбец, но я хочу, чтобы эти значения TRACKING
для дубликатов ID
были в отдельных столбцах.Код ниже не сделал то, что я хотел.
SELECT ID, TRACKING =
STUFF((SELECT DISTINCT ', ' + TRACKING
FROM #t b
WHERE b.ID = a.ID
FOR XML PATH('')), 1, 2, '')
FROM #t a
GROUP BY ID
Я собираюсь взять это:
| ID | TRACKING |
-----------------
| 5 | 13t3in3i |
| 5 | g13g13gg |
| 3 | egqegqgq |
| 2 | 14y2y24y |
| 2 | 42yy44yy |
| 5 | 8i535i35 |
И превратить это в это:
| ID | TRACKING | TRACKING1 | TRACKING2 |
-----------------
| 5 | 13t3in3i | g13g13gg | 8i535i35 |
| 3 | egqegqgq | | |
| 2 | 14y2y24y | 42yy44yy | |