Oracle-将未知行值透视到列

时间:2019-08-01 15:59:22

标签: oracle oracle11g pivot

我有一个看起来像这样的Schema k:

NAME DATE NUM
--------------
A    1/1  1
A    1/2  2
A    1/3  3
A    1/4  4

所需的输出:

NAME 1/1 1/2 1/3 1/4
--------------------
A    1   2   3   4

我尝试了以下查询,但效果很好:

select * from k pivot( sum(num) for date in('1/1' as "1/1",'1/2' as "1/2",'1/3' as "1/3",'1/4' as "1/4"));

问题:模式具有不同的日期范围,所以我不知道日期列的内容是“硬编码”查询中的日期值。在这种情况下,我尝试了以下操作,并抛出了缺少的表达式错误:

select * from k pivot( sum(num) for date in(select distinct date from k));

我该如何使用它?这有可能吗?

0 个答案:

没有答案