【问题标题】:Use of DB2 Indices with several columns多列使用 DB2 索引
【发布时间】:2012-01-27 10:14:35
【问题描述】:

我们正在尝试定位性能问题并想知道是否正在使用索引。

我们有一个包含复合键“ID”和“Version”的表,都是整数。

我们有一个选择试图找到“ID”的最大值。 (如果有影响,这将通过实体框架完成)。

这将使用索引还是进行表扫描?

【问题讨论】:

  • 除非我们能同时看到生成的 SQL 以及表结构和索引定义,否则可能很难判断。

标签: entity-framework indexing db2 query-optimization


【解决方案1】:

如果ID 列被定义为多列索引的第一部分,那么DB2 将使用该索引来确定MAX()。如果您执行MAX(VERSION),它可能仍会尝试使用索引,但如果您有一个非常大的表,这可能需要相当多的处理。

您可以使用explain facilities 确认这一点(链接适用于 Linux/Unix/Windows 9.7)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-24
    • 2011-11-07
    • 2010-09-15
    相关资源
    最近更新 更多