我很好奇SQL中是否有一种约定鼓励我们在ON语句之后使用主键或左边的外键。
我的意思是,让我们假设我们有两个表,分别是 MASTER 和 DETAIL。DETAIL有一个针对master的外键。
那么,是否有任何约定导致我们在
MASTER m inner join DETAIL d on m.ID = d.MASTER_ID
和
MASTER m inner join DETAIL d on d.MASTER_ID = m.ID
在
JOIN
的 ON
语句之后使用主键或左侧的外键没有约定。正如@Damien_The_Unbeliever所指出的,SQL Engine不会询问您如何获取数据,而是询问您要获取哪些数据。
然后,在 ON
语句之后首先使用主键或外键无关紧要。