一、Index Building Filter(索引创建时过滤)
有一些索引非常低效的,比如经常查询状态为进行中的订单,订单有99%的状态是完成,1%是进行中 ,因此我们在订单状态字段上建了一个索引,性能是提高了,但是感觉索引中保存了99%的完成状态数据是永远不会查询到的,很浪费空间。如果我们的索引在建立的时间就不保存完成状态的数据,那不是更好。 Index Building Filter就是用来解决这个问题。
- create index idx_3 on order(status) where status=’running’
二、Index Include Column(索引包含列)
我们经常需要建一些组合索引,一般有两种原因:
1.通过组合索引可以提高索引过滤度
比如订单表有会员ID和订单日期2个字段,如果我们经常要按会员和订单时间查询,
- Select * from order where member_id=? and order_date between ? and ?