У меня проблема с поворотом таблицы в ms-sql-сервере. Я пробовал разные вещи с PIVOT, но я не понимаю, и все еще есть проблемы, чтобы сделать это правильно.
может быть, это потому, что у меня нет возрастающего идентификационного номера в таблице.
я давно работал с sql, но сейчас я действительно застрял и надеялся, что есть кто-то, кто поможет мне с этим.
Я начинаю с этой таблицы:
id no1 no2 name state
-------------------------------
11 5503 NULL alf 0
11 8533 X1705 ben 0
11 2716 X0608 cha 1
11 5263 X0811 cha 2
11 3158 X0603 cha 2
12 5503 NULL alf 0
12 8533 X1705 ben 0
12 3158 X0603 cha 2
12 2716 X0608 cha 1
12 5263 X0811 cha 2
13 8731 NULL alf 0
13 8732 X1705 ben 0
13 4407 X1307 cha 1
14 8247 NULL alf 0
14 7128 X1705 ben 0
14 5535 X1403 cha 1
14 7281 X9812 cha 0
и я хотел бы получить сводную таблицу
id,no1,no2,name,state,no1,no2,name,state,no1,no2,name,state,no1,no2,name,state, …
--------------------------------------------------------------------------------
12,5503,NULL,alf,0,8533,X1705,ben,0,3158,X0603,cha,2,2716,X0608,5263,X0811,cha,2
13,8731,NULL,alf,0,8732,X1705,ben,0,4407,X1307,cha,1
14,8247,NULL,alf,0,7128,X1705,ben,0,5535,X1403,cha,1,7281,X9812,cha,0
существует # всегда одно "имя" с "alf" и "ben" для каждого идентификатора
но может быть до макс. 4 записи в «имя» с «ча»
так что в основном я хочу "сгруппировать" наборы данных на основе столбца "ID", который не является идентификатором для каждого набора данных. но у меня нет int, только uniqueidentifier (не показан в этом примере), и я не вижу ни одного столбца, где я могу использовать агрегатную функцию, такую как "sum" или "avg". могу / должен ли я использовать "макс"?
это вообще возможно с Pivot?