Sql 转换查询结果

Sql 转换查询结果,sql,oracle,Sql,Oracle,我有一个select语句,它返回两个值(一列,两行)。我想更改它们,以便有两列和一行。我知道有类似pivot的东西,但我不确定如何使用它,因为它需要聚合值,而我在这里不聚合任何东西。完成这项任务最有效的方法是什么?谢谢大家! 一个简单的方法是使用min()和max(): 选择最小(列)、最大(列) 从()t; 使用ROWNUM伪列为每列生成唯一标识符,然后您可以使用任何聚合函数(因为它将只聚合单个值): 我得到错误:4 ORA-00904:“COL”:无效标识符SQL1.sql 7122@use

我有一个select语句,它返回两个值(一列,两行)。我想更改它们,以便有两列和一行。我知道有类似pivot的东西,但我不确定如何使用它,因为它需要聚合值,而我在这里不聚合任何东西。完成这项任务最有效的方法是什么?谢谢大家!

一个简单的方法是使用
min()
max()

选择最小(列)、最大(列)
从()t;

使用
ROWNUM
伪列为每列生成唯一标识符,然后您可以使用任何聚合函数(因为它将只聚合单个值):


我得到错误:4 ORA-00904:“COL”:无效标识符SQL1.sql 7122@user1809566 . . .
col
是查询中列的名称。你没有在你的问题中指定它是什么。你能告诉我们你有什么疑问吗?
select min(col), max(col)
from (<your query here>) t;
SELECT value1, value2  /*, value3 ... */
FROM   ( SELECT your_column, ROWNUM AS rn FROM your_table_or_query )
PIVOT  ( MAX( your_column )
         FOR rn IN ( 1 AS value1, 2 As value2 /*, 3 AS value3 ... */ )
       );