使用sql将多个列合并为单个列

时间:2015-07-27 05:58:07

标签: sql netezza

我的数据格式如下:

 Col1     Col2     Col3      Col4
 ABC      12         34        45

我想要输出如下:

Col1    Col2

ABC      12 
ABC      34
ABC      45

2 个答案:

答案 0 :(得分:1)

您可以使用union:

select col1, col2
union all
select col1, col3
union all
select col1, col4

答案 1 :(得分:1)

如果您需要动态生成sql,请考虑以下事项:

select 'union all select col1, '||  column_name || ' as col2 from ' || table_name
from _v_odbc_columns1
where table_name = '<table name>'
and ordinal_position >=2
order by ordinal_position