MySql - 为什么主键索引不够用?

时间:2018-01-12 08:04:42

标签: mysql sql database

我是数据库新手,所以请不要让我感到震惊。

我研究过MySql会自动创建主键的索引。 但是,如果索引用于加速搜索和连接,并且主键总是在这2个操作中使用,为什么还要为其他列创建索引?

2 个答案:

答案 0 :(得分:0)

例如,您可能希望通过另一列(例如People.Name或People.LastName)搜索(在where子句中排序结果或过滤结果)。为了更快地完成这项工作,您可以使用此列创建索引。如果您不需要,它甚至可能不包括主键。

问题在于索引中的数据以与表中不同的方式存储,特别是为了加快索引的搜索速度。

答案 1 :(得分:0)

加入而不是只有PK到PK。任何2个表都可以在任何涉及其任何列的条件下连接。 PK(主键)&加入时不需要其他约束和索引。他们是为了诚信和优化

表格表示应用程序/业务关系(船舶)/关联。查询返回一个表,它是基表的组合。该表表示关系(船舶)/关联,它是这些基表关系(船舶)/关联的对应组合。

What Kind of Relationship is Between These Tables?
Required to join 2 tables with their FKs in a 3rd table