2013-12-06 3 views
-1

У меня есть таблица со 100 столбцами. Набор данных повторяется после каждого 10-го столбца.Преобразование повторяющихся столбцов в строки - sql-сервер

Я пытаюсь разместить повторяющиеся столбцы в строках, используя индикаторы для каждого набора из 10 столбцов.

Моя текущая таблица выглядит следующим образом:

ID,C1,C2,C3,C4,C5...C10,C11,C12...C20,C21....C100 
R1 .... 
R2 ..... 

Я хочу их в следующей форме:

ID,CoLumn_ID,column1,column2,column3,column4,column5,column6,column7,column8,column9,column10 

R1,REPORT1,C1,C2,C3,C4,C5,C6,C7,C8,C9,C10 
R2,REPORT2,C11,C12,C13,C14,C15,C16,C17,C18,C19,C20 
R3,REPORT3,C21.........C30 
R4,REPORT3,C31.........C40 
R5,REPORT3,C41.........C50 
R6,REPORT3,C51.........C60 
R7,REPORT3,C61.........C70 
R8,REPORT3,C71.........C80 
R9,REPORT3,C81.........C90 
R10,REPORT3,C91.........C100 

Пожалуйста, помогите

ответ

0

Во-первых, эта таблица звучит как нечетным дизайн, поэтому ваша фактическая проблема может быть там.

Это очень простое решение, которое может вам помочь. Что вы делаете, это выбрать наборы из 10 столбцов, а затем разместить их поверх каждого из них с помощью union all.

select c1, c2, .. , c10 from table 
union all 
select c11, c12, .. , c20 from table 
union all 
select c21, c22, .. , c30 from table 
etc... 
Смежные вопросы