求大神看看

snbxp 2014-01-09 03:31:04
有6个表,TB1-TB6,每个表里有几百万条记录,且都有一个相同的字段,PRD_ID。
现在要查询T1中,PRD_ID不在其他表中的记录。
我给每个标都建立索引,然后执行

SELECT *
FROM T1
WHERE NOT EXISTS (SELECT 1 FROM T2 WHERE T2.PRD_ID = T1.PRD_ID)
AND NOT EXISTS (SELECT 1 FROM T3 WHERE T3.PRD_ID = T1.PRD_ID)
AND NOT EXISTS (SELECT 1 FROM T4 WHERE T4.PRD_ID = T1.PRD_ID)
AND NOT EXISTS (SELECT 1 FROM T5 WHERE T5.PRD_ID = T1.PRD_ID)
AND NOT EXISTS (SELECT 1 FROM T6 WHERE T6.PRD_ID = T1.PRD_ID);

执行速度很慢,大约2个小时,请问怎么优化语句,能提高效率?
...全文
40 点赞 收藏 回复
写回复
回复

还没有回复,快来抢沙发~

发动态
发帖子
Oracle 高级技术
创建于2007-09-28

2929

社区成员

1.8w+

社区内容

Oracle 高级技术相关讨论专区
社区公告
暂无公告