创建索引需要使用 CREATE INDEX 语句,该语句允许对索引命名,指定要创建索引的表以及要索引的列,指定索引按照升序/降序排列。
同 UNIQUE 约束一样,索引可以是唯一的。这种情况下,索引会阻止列中(或者列的组合,其中某些列有索引)出现重复的条目。
--单列索引:
CREATE INDEX 索引名 ON 表名 (字段名);
--唯一索引:既提升查询性能,还可保证数据完整性,唯一索引不允许向表中插入任何重复值。
CREATE UNIQUE INDEX 索引名 on 表名 (字段名);
--聚簇索引:
CREATE INDEX 索引名 on 表名 (字段1, 字段2);
创建单列索引还是聚簇索引,要看每次查询中,哪些列在作为过滤条件的 WHERE 子句中最常出现,若有多列出现则选聚簇索引。
--隐式索引:
隐式索引由数据库服务器在创建某些对象的时候自动生成。例如,对于主键约束和唯一约束,数据库服务器就会自动创建索引。
--删除索引:
DROP INDEX index_name;
什么时候应当避免使用索引?
1、小的数据表;
2、需要频繁进行大批量的更新或者插入操作的表;
3、如果列中包含大数或者 NULL 值,不宜创建索引;
4、频繁操作的列不宜创建索引。