Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 让unpivot自动抓取列列表(oracle 11g)_Sql_Oracle_Oracle11g_Unpivot - Fatal编程技术网

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
执行它并返回光标。

下面是代码的详细答案: