5

根据 oracle 文档,PIVOT函数不支持“ IN”子句中的子查询,但在PIVOTXML 函数中是可能的。例如

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函数本身中?

4

1 回答 1

1

不,列数必须在解析时知道。对于 PIVOT XML 没有问题,因为这样的查询只返回一列。

于 2012-07-26T12:33:32.263 回答