在我看来,有两种情况可以使用JOIN:
这些情况对吗?是否还有其他使用JOIN的方案?
编辑:我想我错误传达了。我理解如何一个JOIN工作,我不太确定何时使用一个。答案 0 :(得分:7)
JOINS用于 JOIN 表以及相关信息。
典型的情况是你可以说
用户具有特定安全设置的用户表。将使用连接,以便您可以确定用户具有哪些设置。
Users
-UserID
-UserName
UserSecurityRoles
-UserID
-SecurityRoleID
SecurityRoles
-SecurityRoleID
-SecurityRole
SELECT *
FROM Users u INNER JOIN
UserSecurityRoles usr ON u.UserID = usr.UserID INNER JOIN
SecurityRoles sr ON usr.SecurityRoleID = sr.SecurityRoleID
WHERE sr.SecurityRole = 'Admin'
LEFT联接将用于您希望从左侧表格中检索所有数据的情况,以及仅从右侧匹配的数据。
在开始规范表结构时使用JOINS。您可以在列上创建一个包含100个表的表,其中许多数据可能为NULL,或者您可以规范化表,这样可以避免使用包含空值的过多列,从而将适当的数据分组到表结构中。
此Question的答案有一个非常良好的链接,其中包含使用JOIN的图形显示
答案 1 :(得分:3)
JOINS用于返回关系数据库中相关的数据。数据可以通过3种方式相关
JOINS有各种风格:
答案 2 :(得分:1)
当您需要来自多个表的信息时,可以使用联接:)