索引:最基本的索引,没有任何限制
ALTER TABLE ` TABLE _ name ` ADD INDEX INDEX _ name(` column `)
唯一索引:类似于“普通索引”,不同的是索引列的值必须是唯一的,但允许空的值。
ALTER TABLE ` TABLE _ name ` ADD UNIQUE(` column `)
注意:创建唯一索引的目的不是为了提高访问速度,而只是为了避免数据重复。可以有多个唯一索引,但是索引列的值必须是唯一的,并且索引列的值允许有空值。如果您可以确定某个数据列只包含不同的值,则应该在为此数据列创建索引时使用关键字UNIQUE,并将其定义为唯一索引。
主键:是特殊的唯一索引,不允许空的值。
ALTER TABLE ` TABLE _ name ` ADD PRIMARY KEY(` column `)
FULLTEXT(全文索引):它只能用于MyISAM表。对于大数据,生成一个全文索引空需要很长时间。
ALTER TABLE ` TABLE _ name ` ADD full text(` column `)
组合索引:为了提高mysql的效率,可以建立一个组合索引,遵循“最左前缀”的原则。
ALTER TABLE ` TABLE _ name ` ADD INDEX INDEX _ name(` column 1 `,` column2 `,` column3 `)
使用索引时应该知道的事情:
1.索引虽然大大提高了查询速度,但是会减慢更新表的速度,比如插入、更新、删除表。因为在更新表的时候,MySQL不仅要保存数据,还要保存索引文件。
2.索引会占用disk 空之间的索引文件。一般来说,这个问题不太严重,但是如果在一个大表上创建多个组合索引,索引文件会迅速膨胀。
3.索引只是提高效率的一个因素。如果你的MySQL有大量的表,你需要花时间去研究和建立最好的索引或者优化查询语句。
构建索引后,您应该保护索引的良好执行:
请参考“保护索引时需要注意的问题”一文。
adminjs.cn是一个以CSS、JavaScript、Vue、HTML为核心的前端开发技术网站。我们致力于为广大前端开发者提供专业、全面、实用的前端开发知识和技术支持。 在本网站中,您可以学习到最新的前端开发技术,了解前端开发的最新趋势和最佳实践。我们提供丰富的教程和案例,让您可以快速掌握前端开发的核心技术和流程。 Adminjs.cn还提供一系列实用的工具和插件,帮助您更加高效地进行前端开发工作。我们提供的工具和插件都经过精心设计和优化,可以帮助您节省时间和精力,提升开发效率。 在Adminjs.cn中,您可以找到您需要的一切前端开发资源,让您成为一名更加优秀的前端开发者。欢迎您加入我们的大家庭,一起探索前端开发的无限可能!