-1

HRRM という従業員レコード用の SQL テーブルがあります。このテーブルには、employeeID、FirstName、LastName などのフィールドがあります。

SQL には、HREC と呼ばれる別のテーブルがあります。このテーブルは HRRM に結合され、緊急連絡先の詳細が含まれています。

基本的に、HRRM の各従業員は、HREC で多くの緊急連絡先を持つことができます。

HREC にレコードがないすべての従業員を HRRM から選択するにはどうすればよいですか?

4

2 に答える 2

2

HRRMにレコードがないすべての従業員を選択するにはどうすればよいHRECですか?

この英語のステートメントは、ほとんど単語ごとに SQL に変換されます。

SELECT *
FROM HRRM e
WHERE NOT EXISTS (SELECT * FROM HREC r WHERE r.emp_id=e.emp_id)

それほど自明ではない方法は、アウターを使用することですJOIN:

SELECT e.*
FROM HRRM e
LEFT OUTER JOIN HREC r ON r.emp_id=e.emp_id
WHERE r.emp_id IS NULL
于 2013-10-09T01:57:08.430 に答える
0

NOT EXISTS を使用:

SELECT * FROM HRRM R 
WHERE NOT EXISTS (SELECT * FROM HREC E WHERE R.EMP_ID=E.EMP_ID)

同時に DISTINCT を使用する場合を除き、join を使用しないでください。

于 2013-10-09T02:38:04.327 に答える