可以对常使用的字段添加索引,提高查询效率。但,如果增、删记录,索引就会发生改变,增加查询时间,另外,主键自动添加索引
一、添加索引语句:
ALTER TABLE student
ADD INDEX idx_score (score) #添加idx_score索引,是student表中的score
2.1 唯一索引:由于业务中有关键字具有唯一性但存在更改的可能性(身份证号,邮箱等)不能作为主键,但他们之间又相互唯一,这时可以添加唯一索引,来提高查询效率。
添加唯一索引语句:
ALTER TABLE student
ADD UNIQUE INDEX uni_name (name)
2.2 如果没有查询需求,也可以将其添加唯一性约束。
添加唯一性约束语句:
ALTER TABLE student
ADD CONSTRAINT uni_name UNIQUE (name)
2.3 强制指定索引
可以自己选取索引,要求是选取的索引必须存在,使用FORCE INDEX语句
SELECT * FROM students FORCE INDEX (idx_class_id) WHERE class_id = 1 ORDER BY id DESC
索引只是为了提高数据库的查询效率