mysql - 基数混淆 - 状态字段(50 个状态)索引的基数是否应该为 50?

标签 mysql phpmyadmin

我正在使用包含名称和地址的数据库。其中一个字段是“state_abbreviation”。

我的数据有 50 个州,加上 DC,所以总共有 51 个唯一的州缩写。我知道只有这些,因为这个查询只有 51 个结果:

Select state_abbreviation from table group by state_abbreviation

我在这个字段上创建了一个索引,名称:“index_state”,类型:“index”,该字段是一个 varchar(5)。

当我查看表的结构时,索引对我来说很奇怪,因为它说: 类型:BTREE 独特:无 包装:否 基数:108 整理:A

基数不应该是 51 吗?

最佳答案

谢谢克里斯,分析表似乎可以解决问题。我不能说我更好地理解了为什么会发生这种情况,但这似乎澄清了一切。

关于mysql - 基数混淆 - 状态字段(50 个状态)索引的基数是否应该为 50?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8621627/

相关文章:

mysql - 区分大小写的表名称

php - 存储在服务器上上传的图像的路径

MysqlWhere 和 Between 查询数据库

PHP 尝试计算多个表的数量

Java Hibernate 表映射

MySQL 连接 View ,将列连接成一个字符串

sql - 计算mysql语句中的投票百分比

mysql - 如何获取 SQL 中所有包的最新包?

MySql REPLACE 不执行只是继续处理

mysql - 使用 phpmyadmin 创建表