я таблица называется продаж с тремя колонками SalesCountry
, SalesState
и SalesMan
, как показано ниже:SQL Server 2008 R2: Динамический запрос поворота
Таблица:
create table sales
(
SalesCountry varchar(20),
SalesState varchar(20),
SalesMan varchar(20)
);
Вставка:
insert into sales values('USA','TEXAS','Mak');
insert into sales values('USA','California','Sam');
insert into sales values('Cannada','Alberta','John');
insert into sales values('Cannada','Manitoba','John');
Теперь я хочу показать t он приводит следующим образом:
County State1 State2 SalesMan1 SalesMan2
---------------------------------------------------------
USA TEXAS California Mak Sam
Cannada Alberta Manitoba John NULL
Примечание: Запрос поворота должен быть динамичным, который должен показать столбцы согласно строк в таблице с приращением значения 1 с именем столбца, как я показал State1,State2
там может be State3,State4,,,,,,n
. В моем примере есть только четыре строки, может быть и больше.
Возможный дубликат [SQL Server: динамический шарнирный более 5 столбцов] (http://stackoverflow.com/questions/18657214/sql-server-dynamic-pivot- over-5-columns) –
Как будет конечный результат, если мы: «вставляем в значения продаж (« США »,« Калифорния »,« Джон »); будет ли он создавать столбцы SalesMan3? а также «вставить в стоимостные ценности (« США »,« Канзас »,« Мак »); – armen