微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sql – 具有子查询的Oracle PIVOT子句的示例

Oracle的 definition of the PIVOT clause规定了可以在IN子句中定义一个查询.这是我想象的一个虚构的例子
... PIVOT (AVG(salary) FOR (company) IN (SELECT disTINCT company FROM companies))

不过,我得到一个ORA-00936:缺少表达式错误.不幸的是,这个新的PIVOT条款的错误通常是相当隐秘的.任何人都可以给我一个很好的例子,说明如何在PIVOT子句的IN子句中使用子查询

解决方法

显然,我太懒了,没有阅读到文档的末尾…进一步下来,文档规定:

subquery A subquery is used only in conjunction with the XML keyword. When you specify a subquery,all values found by the subquery are used for pivoting. […]

这将工作

PIVOT XML (AVG(salary) FOR (company) IN (SELECT disTINCT company FROM companies))

查看完整的文档

http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_10002.htm#CHDFAFIE

原文地址:https://www.jb51.cc/mssql/83128.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐