Orale 常见问题解析

如果一个table很大,你怎样考虑建立索引?你建立组合索引考虑什么?
-----table很大表示该表的更新很频繁,建立索引并不一定就会高效,还是要从业务的角度考虑是否有必要保留那么多数据;根据业务需求,也可以考虑将这个table改造为分区表,例如按月份进行分区,然后建立分区索引,可以避免大表扫描;根据这个table所执行的SQL进行优化,选取特定字段建立索引。

      建立组合索引,可以考虑跟单列索引进行合并,减少索引数量;如果组合列的查询返回量较少,建立组合索引的效果才会理想;等值查询列在建立索引时放在前面效果较好;组合索引的字段不宜超过3个

1.根据实际应用考虑联合索引,如果有两列或者三列经常性被组合使用,可以考虑建立联合索引(可以对根据业务分析,将等值查询列放在前面)。
2.如果没有上述情况,或者其中某个字段是主键,可以考虑只建立单字段索引(复合索引开销大)。
3.要是没有固定字段,然而又有几个字段经常被条件所涉及,就分别建立单字段索引。
4.如果会被作为被驱动表,连接字段要建立索引。
5.如果有外键,外键加上索引列。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值