Преобразование значений таблицы в имена столбцов | Ценности

У меня есть таблица с двумя столбцами, имя и значение:

Name    Value   

col1    value1  
col2    value2  
col3    value3

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

col1    col2    col3    

value1  value2  value3  

Я пишу запрос в Vertica, но подойдет любая логическая помощь.

1 ответ

Попробуйте использовать DECODE для этого.

Смотрите пример:

    create table bla  (
name varchar(10),
value varchar(10)
);


insert into bla values ('col1','value1');
insert into bla values ('col2','value2');
insert into bla values ('col3','value3');

SELECT 
MAX( DECODE( name , 'col1' , value ) ) AS col1 ,
MAX( DECODE( name , 'col2' , value ) ) AS col2 ,
MAX( DECODE( name , 'col3' , value ) ) AS col3 
FROM bla

--выход

col1    col2    col3
value1  value2  value3
Другие вопросы по тегам