ORA-39751: partitioned table on both sides of PARTITIONED OUTER JOIN is not supported ORACLE 报错 故障修复
文档解释
ORA-39751: partitioned table on both sides of PARTITIONED OUTER JOIN is not supported
Cause: An attempt was made to partition both sides of PARTITIONED OUTER JOIN.
Action: Specify partitioned table on one side of PARTITIONED OUTER JOIN only.
Oracle无法将分区表用于 PARTITIONED OUTER JOIN ,会产生 ORA-39751 错误消息。官方解释说,在 PARTITIONED OUTER JOIN 中,Oracle必须处理来自两个不同的表的新的分区,而这是目前不可能的。
常见案例
例如:有两个分区表table1和table2,出现语句:
select *
from table1
LEFT OUTER JOIN table2
ON table1.column1=table2.column2
正常处理方法及步骤
可以重写上述语句,将其改为普通LEFT OUTER JOIN:
select *
from table1,table2
where table1.column1=table2.column2(+);
或者将其分解为两个查询:
select *
from table1
where table1.column1 in (
select table2.column2
from table2);
select *
from table2
where table2.column2 in (
select table1.column1
from table1);
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341