mysql - 主键列上是否有必要有一个 PRIMARY 索引 AND 列索引?

标签 mysql indexing ems

想象一下下表:

简单的单行表。

列名 = id int(11)

+---------------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table               | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+---------------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| tablename           |          0 | PRIMARY  |            1 | id          | A         |     1719077 |     NULL | NULL   |      | BTREE      |         |               |
| tablename           |          0 | id       |            1 | id          | A         |     1719077 |     NULL | NULL   |      | BTREE      |         |               |
+---------------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

这是表名中显示索引的转储。

我认为这是我使用的 mysql 管理器(ems mysql 管理器)中的一个“bug”,当您创建带有主键的表时,它将创建一个 PRIMARY 索引(实际索引的名称是 PRIMARY)并且在创建表时自动创建主键列名索引。

可以删除其中一个吗?

谢谢!

最佳答案

绝对是的。主键可以很好地用作索引。

关于mysql - 主键列上是否有必要有一个 PRIMARY 索引 AND 列索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7494120/

相关文章:

php - MySQL导入汉字

css - 浏览器缩放更改时内容被裁剪

mysql - 偏移量问题

MySQL 与 PostgreSQL?我应该为我的 Django 项目选择哪个?

mysql - 找不到mysql提示

mysql - 在多个表的Mysql中建立索引

python - 列表索引超出范围

python - 输入数组相等时索引矩阵元素

css - Em 字体大小在我的 h1 顶部增加了边距?

MySQL 性能 - LEFT JOIN/HAVING 与子查询