http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html和https://web.archive.org/web/20120621231245/http://www.khankennels.com/blog/index.php/archives/2007/04/20/getting-joins/对于使用Venn图解释关联查询的基础知识非常有帮助。但我想知道如何将这种思维应用到具有多个连接的查询中。
假设我有3个表:
员工
EmployeeID
FullName
EmployeeTypeID
员工类型(全职、兼职等)
EmployeeTypeID
TypeName
保险记录
InsuranceRecordID
EmployeeID
HealthInsuranceNumber
现在,我希望我的最终结果集包括来自所有三个表的数据,并以以下格式呈现:
EmployeeID | FullName | TypeName | HealthInsuranceNumber
借鉴这两个网站的经验,我可以使用以下连接方法获取所有员工的信息,无论其保险信息是否存在:
SELECT
Employees.EmployeeID, FullName, TypeName, HealthInsuranceNumber
FROM Employees
INNER JOIN EmployeeTypes ON Employees.EmployeeTypeID = EmployeeTypes.EmployeeTypeID
LEFT OUTER JOIN InsuranceRecords ON Employees.EmployeeID = InsuranceRecords.EmployeeID
我的问题是,使用相同类型的维恩图模式,如何以可视化方式表示上述查询?这张图片准确吗?