我有一个大型脚本,用于获取有关员工的信息,该脚本由多个表之间的大量查找和联接组成,我想知道,我是否可以知道脚本的哪一部分或哪个查找需要更多时间并使脚本非常慢,所以我只能调整它,而不是尝试调整整个脚本,直到找出哪个脚本给我带来了麻烦。
我使用的是 Oracle 11g。
提前致谢。
最佳答案
使用EXPLAIN PLAN找出执行工作流程,以及查询中最消耗部分的位置。例如,如果您使用 SQL Developer,则可以运行以下命令:
explain plan for
<your query>
然后运行:
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
您可以查看时间和成本以及操作类型。例如,每当您看到“全表扫描”时,它就是一个红色标志。
关于oracle sql如何知道哪部分查询耗时较长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39324248/