如何使用SQL检查记录是否存在?
我有一个名为HRRM的员工记录SQL表。此表包含employeeID、FirstName、LastName等字段 SQL中还有另一个名为HREC的表。此表已加入HRRM,并包含紧急联系人详细信息 基本上,HRRM中的每个员工都可以在HREC中有许多紧急联系人 如何从HRRM中选择在HREC中没有任何记录的所有员工 如何从HRRM中选择在HREC中没有任何记录的所有员工 此英语语句几乎可以逐字翻译为SQL:如何使用SQL检查记录是否存在?,sql,select,join,null,exists,Sql,Select,Join,Null,Exists,我有一个名为HRRM的员工记录SQL表。此表包含employeeID、FirstName、LastName等字段 SQL中还有另一个名为HREC的表。此表已加入HRRM,并包含紧急联系人详细信息 基本上,HRRM中的每个员工都可以在HREC中有许多紧急联系人 如何从HRRM中选择在HREC中没有任何记录的所有员工 如何从HRRM中选择在HREC中没有任何记录的所有员工 此英语语句几乎可以逐字翻译为SQL: SELECT * FROM HRRM e WHERE NOT EXISTS (SELECT
SELECT *
FROM HRRM e
WHERE NOT EXISTS (SELECT * FROM HREC r WHERE r.emp_id=e.emp_id)
一种不那么简单的方法是使用外部联接:
不存在以下用途:
SELECT * FROM HRRM R
WHERE NOT EXISTS (SELECT * FROM HREC E WHERE R.EMP_ID=E.EMP_ID)
除非同时使用DISTINCT,否则不应使用join
SELECT * FROM HRRM R
WHERE NOT EXISTS (SELECT * FROM HREC E WHERE R.EMP_ID=E.EMP_ID)