У меня есть таблица, которая выглядит примерно так.Использование SQL pivot в случае только одного дублированного поля данных
owner owner_email customer
dude1 email1 customer1
dude1 email1 customer2
dude1 email1 customer3
dude2 email2 customer4
dude2 email2 customer5
и т.д ...
Ищу следующего
owner owner_email customer1 customer2 customer3 etc
Используя примеры Повороты на этом сайте, я начинаю видеть, что мне нужно что-то еще группе и у меня этого нет. Использует ли здесь правильное решение? У меня есть следующий пример использования другого.
SELECT * FROM
(
SELECT [owner], [owner_email], [customer]
FROM tTableName
) AS source
PIVOT
(
MAX([customer])
FOR [customer] IN ([name1][name2][name3][name4][name5])
) as pvt
Спасибо.
SQL-запросы производят * исправленное * количество столбцов, чьи имена и типы данных также исправлены. Если вы хотите создать набор результатов с переменным числом столбцов, вы ** можете ** изучить динамический SQL, но обычно вам намного лучше выполнять такие преобразования на другом языке/ближе к пользователю. –