mysql索引二

2021-02-02  本文已影响0人  酷酷的美猴王

1、什么是索引?

索引是帮助数据库高效获取数据的数据结构。

2、索引的引用层次划分

3、如何添加索引

3.1主键索引

ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )

3.2唯一索引

ALTER TABLE `table_name` ADD UNIQUE (`column`)

3.3 普通索引

ALTER TABLE `table_name` ADD INDEX index_name (`column` )

3.4 多列索引

ALTER TABLE `table_name` ADD INDEX index_name (`column1`,`column2`,`column3`)

4、注意事项

4.1、sql语句将可过滤掉最多数据的字段放前面

比如,user表数据有1000w条,现在要查询男生(sex=1)&20岁(age=20) 的数据有多少,sql查询where 条件应该是 age=20 and sex=1

4.2、like语句 'xx%'索引有效;'%xx'索引失效

4.3、联合索引要符合最左匹配原则

例如:
user表 联合索引 name - age
sql语句where 条件
name='张三' and age=20 索引有效
age=20 and name='张三' 索引失效

4.4、使用不等于(!= 、<>)索引失效

例如:select name from user where age != 20 索引失效

4.5、字符串不用单引号索引失效

例如:
select id from user where name=张三; 索引失效
select id from user where name='张三'; 索引有效

4.6、or连接索引失效

例如:select id from user where name='张三' or name='李四' 索引失效

4.7、order by、group by 索引失效

4.8、索引列计算或用函数 索引失效

5、一条sql语句如何执行

image.png
上一篇 下一篇

猜你喜欢

热点阅读