我想知道,如果我们有两个共享一列的表,并且在第一个表中,这一列是主键,但在第二列中,另一个被选为主键...然后SQL处理公共第二个表中的列只是另一个普通列?因此,如果基于公共列信息搜索第二表,则不存在优化,即两个相关表之间的主键完全独立?
答案 0 :(得分:3)
是的,它们是独立的:主键对于表来说是完全唯一的。
它们不在表之间共享,即使列的类型相同,但您可以将表的主键作为另一个表中的外键共享。
不执行优化,因为您提到的第二列不是该表中的主键。默认情况下,数据库会根据主键创建一个索引,从而提高在表数据中的查找效果。
答案 1 :(得分:0)
如果在各自表中的两列之间建立了正确的PK-FK关系,则应优化任何连接。