代码之家  ›  专栏  ›  技术社区  ›  user5884068

SQL/Oracle中是否有一些东西可以在程序执行之前估计程序执行时间?[已关闭]

  •  0
  • user5884068  · 技术社区  · 10 年前

    我是SQL/Oracle编程的初学者。就像聚合函数计数可以用于查找结果集中的记录数一样,我需要理解为什么一些连接查询需要花费大量时间来执行。

    2 回复  |  直到 10 年前
        1
  •  1
  •   simon at rcl    10 年前

    它可能不会告诉您多长时间,但查看查询计划会让您很好地了解为什么查询需要很长时间。尤其要在较大的表上查找表扫描。

    对于Sql Server,SSMS将允许您在不实际运行查询的情况下生成预期的查询计划,或者运行查询并显示结果以及实际使用的查询计划。Toad for Oracle具有类似的功能。

    查询计划显示了它如何访问各个表,以及如何在它们之间进行连接,以及每个操作的“成本”度量。更高的成本需要更长的运行时间。关于查询计划的完整教程比这种格式的教程要多得多。

        2
  •  0
  •   EasterBunnyBugSmasher    10 年前

    在Oracle中,您可以查看视图v$session_longops以查看长时间运行的查询的进度。