ホームページ >データベース >mysql チュートリアル >SQL の NOT EXISTS 演算子を使用して行方不明の従業員を見つけるにはどうすればよいですか?

SQL の NOT EXISTS 演算子を使用して行方不明の従業員を見つけるにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-29 09:10:15399ブラウズ

How Can I Find Missing Employees Using SQL's NOT EXISTS Operator?

「SELECT * WHERE NOT EXISTS」を使用した行方不明の従業員の特定

当面のタスクには、1 つのテーブル (従業員) から名前が記載されている従業員を特定することが含まれます。別のテーブル (eotm_dyn) には現れません。目的は、eotm_dyn テーブルから欠勤している従業員のリストを取得することです。

「NOT EXISTS」演算子の使用

「NOT EXISTS」演算子が使用されています提供されたクエリで、employees テーブルのレコードに eotm_dyn テーブルの対応するエントリがないかどうかを判断します。構文は次のとおりです。

SELECT *
FROM employees
WHERE NOT EXISTS (
    SELECT name
    FROM eotm_dyn
    WHERE employees.id = eotm_dyn.employeeID
)

エラーへの対処

重大な欠落のため、元のクエリは結果を返しませんでした。従業員間の結合の欠如です。および eotm_dyn テーブル。これを解決するには、結合条件を指定する必要があります。最も簡単なオプションは、テーブルを共通フィールド (employeeID など) で結合することです。

修正されたクエリ

結合条件を組み込むと、修正されたクエリは次のようになります。

SELECT *
FROM employees e
WHERE NOT EXISTS (
    SELECT NULL
    FROM eotm_dyn d
    WHERE d.employeeID = e.id
)

このクエリは、eotm_dyn テーブルに存在しない従業員テーブル内のすべての従業員を返します。行方不明の従業員を特定するという本来の任務を遂行します。

以上がSQL の NOT EXISTS 演算子を使用して行方不明の従業員を見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。