a有索引 b有索引
ab有联合索引
a有索引 b没有索引
https://www.nowcoder.com/share/jump/34126941734567633558
chatgpt
对于查询语句 SELECT * FROM A WHERE a = 1 OR b = 1,查询的效率会受到索引的影响。以下是每种索引配置下的执行方式和性能分析:
• 执行逻辑:
• 数据库会分别使用 a 的索引和 b 的索引。
• 然后将两部分的结果合并(OR 操作),去重后返回最终结果。
• 性能:
• 这种情况下,优化器可能会扫描两次索引(一次是基于 a,一次是基于 b),然后合并。
• 如果匹配的数据量较大,合并和去重的开销可能较高。
• 执行逻辑:
• 联合索引一般是按照 (a, b) 的顺序存储的。