根据oracle文档,PIVOT
函数不支持“IN
”子句中的子查询,但可以在PIVOT
XML函数中使用。
E.g。
SELECT *
FROM table_name
PIVOT
(
SUM(column_name_1)
FOR [column_name_2] IN (['Output_Column1'],['Output_Column2'])
)
AS aliasName
我需要用子查询替换['Output_Column1'],['Output_Column2']
。
是否有一些其他函数等同于PIVOT
我们可以提供子查询而不是硬编码整个输出列,甚至是PIVOT
函数本身?
答案 0 :(得分:1)
不,必须在分析时知道列数。对于PIVOT XML,没有问题,因为这样的查询只返回一列。