我试图创建一个清除脚本来清除所有未使用的描述: 我的查询如下:
DELETE FROM DESCRIPCIONES WHERE ID_DESCRIPCION NOT IN
(SELECT ID_NOMBRE FROM CUESTIONARIOS
UNION
SELECT ID_DESCRIPCION FROM CUESTIONARIOS
UNION
SELECT ID_NOMBRE FROM PLANTILLAS
....
)
此查询中还有更多UNION。这就是为什么这个查询花费太多时间的原因。有没有办法用更快的 LEFT JOIN 替换此查询,并避免嵌套查询。 PD:Oracle 11g
由于
答案 0 :(得分:0)
最后我使用了下一个查询:
DELETE FROM DESCRIPCIONES WHERE ID_DESCRIPCION NOT IN
(SELECT ID_NOMBRE FROM CUESTIONARIOS
UNION ALL
SELECT ID_DESCRIPCION FROM CUESTIONARIOS
UNION ALL
SELECT ID_NOMBRE FROM PLANTILLAS
....
)
并且得到了巨大的性能提升,感谢所有人!