2011-12-14 3 views
0

У меня есть таблица в этом форматеMultiple строка автообъединение

Id QId ResourceId ModuleId SubProjId Comments 
1 1 1 1 2 ffdg 1 1 
2 2 1 1 2 dfgfdg 1 1 
3 3 1 1 2 hgjhg 1 1 
4 1 2 1 2 tryty 1 0 
5 5 1 1 2 sdf 1 1 
6 5 2 1 2 ghgfh 1 0 
7 7 2 1 2 tytry 1 0 
8 3 2 1 2 rytr 1 0 

и я тусклый результат таким образом

qid ResourceId Comments ResourceId Comments 

1 1 ffdg 2 tryty 
3 1 hgjhg 2 rytr 

я попытался

select distinct A.qid,A.ResourceId,A.Comments,B.ResourceId,b.Comments 
from dbo.#temp A inner join #temp B on A.QId=B.QId and A.[ModuleId]=B.[ModuleId] and a.[SubProjId]=b.[SubProjId] 

, но не нашли никакой удачи пожалуйста, помогите

+0

Надеюсь, эта нить поможет вам. http://stackoverflow.com/questions/4071811/how-to-transform-vertical-data-into-horizontal-data-with-sql – Pavan

+0

Объясните, на каком основании получается результат. –

+0

@Nakul: -basically A.qid, A.ResourceId и [ModuleId] являются общими –

ответ

0

Вы хотите преобразовать вертикальные данные по горизонтали. Поэтому вам нужно создать сводную таблицу. Вы можете найти более подробную информацию здесь How to transform vertical data into horizontal data with SQL?

+0

нет. Я хочу, чтобы горизонтальные данные были вертикальными. –

+0

. Тогда почему столбцы ResourceId и Comments встречаются дважды в результате? – Pavan

+0

Я хочу получить такой результат –

Смежные вопросы