1.要想知道怎样建立合适的额索引,先要知道什么情况下不适合建索引
A.频繁的insert、update
B.索引的选择性低,如在性别上建索引的话并不能区别每一条记录,但对于具体应用场景而言要讨论,如相亲网站中,虽然性别的选择性低,但是经常使用的,所以索引中最好加性别P183
C.记录太少不适合建索引
2.由于最佳左原则导致的索引先后顺序变得十分重要,那么如何确定索引的顺序呢?
A.通过统计不同字段的个数
select count(distinct staff_id)/count(*) as col1,
count(distinct customer_id)/count(*) as col2
from tmp;
考虑全局的基数和选择性,通过比较不同字段的选择率来判断,选择率高的自然在前
B.将使用范围查询的字段放到最后,避免后续字段失效
C.能使用复合索引就不要使用单列的索引多列索引
D.对于varchar、text、blob类型可以使用前缀索引前缀索引