Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.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
oraclesql中的列-行转置_Oracle_Oracle11g - Fatal编程技术网

oraclesql中的列-行转置

oraclesql中的列-行转置,oracle,oracle11g,Oracle,Oracle11g,嗨,我有一个简单的查询,它给出了这个结果 我想修改它如下。Name列成为列标题,studentID列成为第一行 WITH t AS (SELECT 1001 studentid, 'john' NAME FROM dual UNION ALL SELECT 1002, 'kane' FROM dual ) SELECT * FROM ( SELECT studentid, NAME FROM t) pivot (max(studentid) for na

嗨,我有一个简单的查询,它给出了这个结果

我想修改它如下。Name列成为列标题,studentID列成为第一行

WITH t AS
     (SELECT 1001 studentid, 'john' NAME FROM dual
     UNION ALL
     SELECT 1002, 'kane' FROM dual
     )
SELECT * FROM (
SELECT studentid, NAME FROM t)
pivot (max(studentid) for name in ('john' John, 'kane' Kane));

你好,谢谢。我不熟悉这个oracle sql。我不写很多查询,但偶尔需要写。你能解释一下转换背后的逻辑和你的疑问吗?你可以使用
PIVOT
子句阅读,参见文档和链接,例如:,