小编Anu*_*dve的帖子

索引是否与oracle中的组函数一起使用?

我正在运行以下查询.

SELECT Table_1.Field_1,
           Table_1.Field_2,
           SUM(Table_1.Field_5) BALANCE_AMOUNT
      FROM Table_1, Table_2
     WHERE Table_1.Field_3 NOT IN (1, 3)
       AND Table_2.Field_2 <> 2
       AND Table_2.Field_3 = 'Y'
       AND Table_1.Field_1 = Table_2.Field_1
       AND Table_1.Field_4 = '31-oct-2011'
     GROUP BY Table_1.Field_1, Table_1.Field_2;
Run Code Online (Sandbox Code Playgroud)

我为列创建了索引(Field_1,Field_2,Field_3,Field_4),Table_1但索引没有被使用.

如果我删除了SUM(Table_1.Field_5) from select子句,则会使用索引.

如果优化器没有使用此索引或因为SUM()我在查询中使用的函数而感到困惑.

请分享你的解释.

sql oracle indexing oracle11g

4
推荐指数
1
解决办法
6214
查看次数

标签 统计

indexing ×1

oracle ×1

oracle11g ×1

sql ×1