【发布时间】:2010-03-16 15:58:28
【问题描述】:
我有一个 Oracle SQL 查询作为存储过程的一部分:
DELETE FROM item i
WHERE NOT EXISTS (SELECT 1 FROM item_queue q WHERE q.n=i.n)
AND NOT EXISTS (SELECT 1 FROM tool_queue t WHERE t.n=i.n);
关于表格的一些信息:
- item 包含大约 10k 行,索引在 n 列上
- item_queue 包含大约 100 万行,并且索引在 n 列上
- tool_queue 还包含大约 500 万行索引
我想知道是否可以以某种方式优化查询/子查询以使它们运行得更快,我认为删除通常相当快
【问题讨论】:
-
请重新格式化您的代码,使其不在滚动窗格中。
标签: sql oracle optimization stored-procedures plsql