You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

复合索引(A,B,C,D)仅查A,B,D时能否利用A,B索引优势?

复合索引(A,B,C,D)在查询条件A,B,D下的索引优势问题
  • 结论:可以享受A、B部分的索引优势
  • 原因:复合索引是按「最左前缀匹配」的规则工作的——只要查询条件包含索引的最左连续列(这里A、B是索引的前两列),数据库就会利用这部分索引来过滤数据。
  • 具体逻辑:当查询条件是A、B、D时,数据库会先通过索引的A、B列快速缩小数据范围,定位到所有符合A和B条件的记录,之后再在这个小范围里筛选匹配D条件的数据。这个过程比全表扫描高效得多,因为前面的A、B已经帮数据库排除了大部分无关数据。
  • 额外补充:如果是A、D这种条件,就只能用到A列的索引优势,因为中间缺了B列,没法连续匹配索引的后续部分;但A、B、D的情况里,A、B是连续的最左前缀,所以完全可以利用前两列的索引优势。

内容的提问来源于stack exchange,提问作者Niseonna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 12:02:02