前言
本章主要讲述Mysql面试题总结
一、主要内容
1.mysql中char和varchar的区别?
char是固定长度字符串
varchar是变长字符串,变长字符串的意思字段内容锁占的大小会随着内容动态变化
2.mysql中的varchar(20)中的20指的是什么?
20在mysql5.0.3之前的版本中代表最大字节数,
mysql5.0.3之后版本代表最大字符数
3.什么是聚集索引?
原则上,索引与数据是分开存储的,而在innodb存储引擎中数据与主键索引是合并在一起的,数据存在主键索引对应的b+树的叶子节点上,这里的主键索引就是聚集索引。
4.什么是最左前缀原则?
索引实际上就是将数据组织为数据结构,比如B+树数据结构
组织的过程实际就是对数据按指定的字段进行排序,而指定的字段就是想建立索引的字段,所以索引底层实际上就是按指定字段将数据进行排序,而排序的过程则类似字符串的大小比较。
比如想对a,b,c三个字段进行排序,实际会先比较a字段,a字段相等就会比较b字段, b字段相等就会比较c字段,依照这个规则将数据组织为一个棵B&