背景:订单表(亿级),主要查询模式包括:按用户查订单列表(user_id + status + created_at 排序)、按商家查订单(merchant_id + status)、按时间范围查统计(created_at)。现在建了 INDEX(user_id, status, created_at) 和 INDEX(merchant_id, status)。想请教:1. 联合索引列序除了选择性原则,还有哪些实际因素要考虑(排序利用?范围查询对后续列的影响?);2. created_at 用范围查询(BETWEEN)时,status 等值过滤放在它前面和后面,执行计划有什么区别?3. 亿级表上验证索引有效性的实际做法——EXPLAIN 之外还有什么工具?希望有 DBA 实战经验。
相似问题