Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用SQL检查记录是否存在?_Sql_Select_Join_Null_Exists - Fatal编程技术网

如何使用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

我有一个名为HRRM的员工记录SQL表。此表包含employeeID、FirstName、LastName等字段

SQL中还有另一个名为HREC的表。此表已加入HRRM,并包含紧急联系人详细信息

基本上,HRRM中的每个员工都可以在HREC中有许多紧急联系人

如何从HRRM中选择在HREC中没有任何记录的所有员工

如何从HRRM中选择在HREC中没有任何记录的所有员工

此英语语句几乎可以逐字翻译为SQL:

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)