2013-09-25 3 views
0

У меня есть таблица с Формат-формат UNPIVOT для таблицы

Name | Value A | Value B | Comment 
ABC  100  50  Test1 
DEF  200  60  Test2 

Я хочу, чтобы результат в формате

Name | AorB | Values | Comment 
ABC  Value A  100  Test1 
ABC  Value B  50  Test1 
DEF  Value A  200  Test2 
DEF  ValueB  60  Test2 
+1

Укажите RDBMS, на которую вы нацеливаете, добавив соответствующий тег (Oracle, SQL Server, MySQL и т. Д.). Могут быть ответы, которые используют преимущества языка или функций продукта, которые не поддерживаются повсеместно. Кроме того, пометив его конкретными СУБД, ваш вопрос может привлечь внимание от людей, более подходящих для ответа на него. – Taryn

ответ

2

Вы можете использовать UNION для достижения этой:

select Name, 'Value A' as AorB, valueA as [Values], Comment 
from Table1 t1 

union 

select Name, 'Value B' as AorB, valueB as [Values], Comment 
from Table1 t1 

Рабочий образец: http://www.sqlfiddle.com/#!3/70f05/2

+0

Спасибо большое! ... – Richa

+0

Упс .. но сегодня я проверил и обнаружил, что значения не появляются в новых сгенерированных столбцах !! Я получаю null в значении, столбцах valueB и комментариях :( – Richa

+0

@ Richa - это источник данных OK? – futankamon