本帖最后由 huawei 于 2017-3-5 10:25 编辑
相信很多PHP入门的用户,学过一段时间Mysql后,当人问到Mysql中的索引,主键,唯一索引,联合索引、全文索引的区别时,肯定傻眼,因为咱们大部分时候一定认为他们是一个意思。
索引就相当于对指定的列进行排序,排序有利于对该列的查询,可以大大增加查询效率。建立索引也是要消耗系统资源,所以索引会降低写操作的效率。
主键,唯一,联合、全文都属于索引。
唯一索引:可以一个表中可以有多个,而且允许为空,列中的值唯一;
主键索引:属于唯一索引(是一种特殊的唯一索引,不能有空值),且一个表只能有一个主键,主键列不允许空值;
联合索引(组合索引):多个字段的多条件查询多使用,为了更多的提高mysql效率可建立组合索引,遵循”最左前缀“原则。
全文索引:仅可用于 MyISAM 表,针对较大的数据,生成全文索引很耗时好空间。
理论讲完了,如果不举出些例子,相信你依然是蒙b的,那我们举例如下,让你彻底搞清楚他们之前的区别:
|
|