, 你现在维护着一个身份证信息和姓名的表, 表示根据身份证号查找对应的名字, 这时的哈希索引的示意图如下:
image.png
图中user2, user4 根据身份证号算出来的哈希值都是N, 但是么关系...建表语句是:
mysql> create table T(
id int primary key,
k int not null,
name varchar(16),
index (k))engine...如果用身份证号做主键,那么每个二级索引的叶子节点占用约 20 个字节,而如果用整型做主键,则只要 4 个字节,如果是长整型(bigint)则是 8 个字节
所以, 主键长度越小, 普通索引的叶子节点就越小...只有一个索引;
该索引必须是唯一索引;
典型的kv场景, 由于没有其他索引, 所以不用考虑其他索引的叶子节点大小....那么,SQL 语句是这么写的:
mysql> select * from tuser where name like '张%' and age=10 and ismale=1;
而 MySQL 5.6