【问题标题】:Oracle performance query on explain plan [closed]关于解释计划的 Oracle 性能查询 [关闭]
【发布时间】:2018-03-30 19:46:26
【问题描述】:

我使用解释计划检查 SQL 查询性能,查询输出显示全表扫描,所以我决定创建索引,但在我的 where 子句中我有来自同一个表的 4 列然后我必须如何/在哪些列上创建索引

【问题讨论】:

  • 这个问题没有包含足够的信息让社区为您提供任何有意义的帮助。我建议您修改您的问题以包括表定义以及您正在针对它运行的查询。您可能还希望包含可能影响答案的信息,例如您的表格包含的行数。

标签: sql oracle oracle11g sql-tuning


【解决方案1】:

如果不知道表是如何定义的,很难精确,但一般来说,您可能希望创建一个包含所有四个字段的单一索引。添加索引后,您需要使用BEGIN DBMS_STATS.GATHER_TABLE_STATS(ownname => 'YOUR_SCHEMA', tabname => 'YOUR_TABLE'); END; 收集有关它的统计信息。但是,如果您的表只有几行,优化器可能仍会选择不使用索引。祝你好运。

【讨论】:

    猜你喜欢
    • 2011-05-21
    • 2016-09-29
    • 2011-02-16
    • 1970-01-01
    • 1970-01-01
    • 2012-06-26
    • 2010-09-09
    • 1970-01-01
    • 2012-11-12
    相关资源
    最近更新 更多