Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Вопрос по PIVOT в SQL 2005  [new]
vitsk
Member

Откуда:
Сообщений: 47
Есть такой скрипт
SELECT * FROM table1
PIVOT (max(field1) FOR field2 IN ([1],[2],[3]))

Как можно(и можно ли вообще) заменить это на что-то вроде такого
SELECT * FROM table1
PIVOT (max(field1) FOR field2 IN (SELECT DISTINCTfield1 from Table2 WHERE fld3=1))
т.е. подставлять значения из таблицы.У меня ругается на SELECT
4 июл 05, 16:19    [1672898]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по PIVOT в SQL 2005  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37101
Опретора pivot в MSSQL нету. В 2000-м, во всяком случае.
З.Ы. Юзайте поиск. https://www.sql.ru/forum/actualtopics.aspx?search=pivot&bid=1
4 июл 05, 16:20    [1672903]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по PIVOT в SQL 2005  [new]
Александр Гладченко
Member

Откуда:
Сообщений: 10752
Блог
может быть пробел нужен :) > DISTINCTfield1
4 июл 05, 16:21    [1672907]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по PIVOT в SQL 2005  [new]
vitsk
Member

Откуда:
Сообщений: 47
пробел я сейчас забыл
4 июл 05, 16:22    [1672920]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по PIVOT в SQL 2005  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37101
Гавриленко Сергей Алексеевич
Опретора pivot в MSSQL нету. В 2000-м, во всяком случае.
З.Ы. Юзайте поиск. https://www.sql.ru/forum/actualtopics.aspx?search=pivot&bid=1

А, сорри. :)
автор
Вопрос по PIVOT в SQL 2005
4 июл 05, 16:24    [1672930]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по PIVOT в SQL 2005  [new]
Я
Guest
Получилось?
21 дек 05, 15:57    [2195180]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по PIVOT в SQL 2005  [new]
Диченка
Member

Откуда: ИТ-Олимп, 58.1-летний супермен
Сообщений: 3989
Похоже что в IN () нельзя использовать подзапросы и переменные. Только если pivot-выражение собирать "динамически" и выполнять через exec или sp_executesql.
21 дек 05, 16:54    [2195597]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по PIVOT в SQL 2005  [new]
Я
Guest
Нашел :[url=http://]www.windowsitpro.com/SQLServer/Article/ArticleID/43140/43140.html[/url]
21 дек 05, 17:19    [2195731]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по PIVOT в SQL 2005  [new]
Я
Guest
Так лучше:
http://www.windowsitpro.com/SQLServer/Article/ArticleID/43140/43140.html
21 дек 05, 17:38    [2195841]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по PIVOT в SQL 2005  [new]
logobobah
Guest
Да, к сожалению можно подвести такой итог: полноценного перекрестного запроса нету и SQL Server 2005. Та возможность которая продемострирована в статье прибегает к динамическому SQL. А с помощью динамических запросов перекрестные запросы строились и в SQL Server 2000. Так что принципиально нового в этом смысле ничего не появилось, только лишь более удобная форма записи конструкций SQL.
5 апр 06, 11:34    [2525866]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить