Sql 让unpivot自动抓取列列表(oracle 11g)
这是我们的后续问题 我希望能够取消生成任意查询结果 要手动取消填充表格,我将执行以下操作:Sql 让unpivot自动抓取列列表(oracle 11g),sql,oracle,oracle11g,unpivot,Sql,Oracle,Oracle11g,Unpivot,这是我们的后续问题 我希望能够取消生成任意查询结果 要手动取消填充表格,我将执行以下操作: select value_type, value from ( ( -- query to be unpivoted -- EG: select col1, col2, col3, col4, col5 from table ) unpivot ( -- Line I would like to change value for value_type in (col1, col2,
select value_type, value from (
(
-- query to be unpivoted
-- EG: select col1, col2, col3, col4, col5 from table
)
unpivot
(
-- Line I would like to change
value for value_type in (col1, col2, col3, col4, col5)
)
);
这适用于所有返回5列的查询,称为
col1、col2
,等等。是否有我输入的内容而不是value作为输入值(col1、col2、col3、col4、col5)
这将从第一部分中选择的查询/视图/表中获取所有列名?您可以在PL/SQL中创建一个存储过程来实现这一点,方法是将SQL语句动态创建为字符串,然后使用执行immediate
执行它并返回光标。下面是代码的详细答案: