Я прочитал много сообщений в блогах. Я прочитал документы. Обычно я довольно хорошо разбираюсь в новых вещах, но, хотя я продолжаю читать, но я просто не понимаю частей PIVOT в SQL Server (2008).
Кто-нибудь, пожалуйста, передайте мне это, красиво и медленно (например, Pivot для чайников)
Если нужен пример, мы можем использовать тот в этом вопросе .
Вот как я попытался изменить этот пример:
SELECT OtherID, Val1, Val2, Val3, Val4, Val5
FROM
(SELECT OtherID, Val
FROM @randomTable) p
PIVOT
(
max(val)
FOR Val IN (Val1, Val2, Val3, Val4, Val5)
) AS PivotTable;
Приведенный выше запрос дает мне нули вместо значений в столбцах Val1, Val2 ...
Но, чтобы внести ясность, Я не ищу здесь фиксированный запрос . Мне нужно понять PIVOT, поскольку я хочу развернуть что-то гораздо более сложное, чем этот пример.
В частности, что происходит с агрегатом? Я просто хочу взять все строковые значения, соответствующие заданному идентификатору, и поместить их в одну строку. Я не пытаюсь ничего агрегировать. (Опять же, см. этот вопрос для моего примера.)