Maison > base de données > tutoriel mysql > Comment récupérer correctement les données manquantes à l'aide de « SELECT * WHERE NOT EXISTS » ?

Comment récupérer correctement les données manquantes à l'aide de « SELECT * WHERE NOT EXISTS » ?

Patricia Arquette
Libérer: 2024-11-26 15:34:10
original
796 Les gens l'ont consulté

How to Correctly Retrieve Missing Data Using `SELECT * WHERE NOT EXISTS`?

Récupérer les données manquantes à l'aide de "SELECT * WHERE NOT EXISTS"

Problème :

Pour récupérer les données d'une table où certaines cellules ne sont pas présentes dans une autre table, un utilisateur a implémenté ce qui suit requête :

SELECT * from employees WHERE NOT EXISTS (SELECT name FROM eotm_dyn)
Copier après la connexion

Cependant, cette requête ne renvoie aucun résultat, malgré des données manquantes connues.

Solution :

Pour résoudre le problème, il est nécessaire pour joindre les deux tables en fonction d'une clé commune, telle que EmployeeID. Utiliser NOT EXISTS sans jointure ne donnera toujours aucun résultat si la deuxième table contient des données.

La requête correcte, en supposant que EmployeeID est la clé de jointure, est :

SELECT  *
FROM    employees e
WHERE   NOT EXISTS
        (
        SELECT  null 
        FROM    eotm_dyn d
        WHERE   d.employeeID = e.id
        )
Copier après la connexion

Alternativement, un une approche moins efficace consisterait à utiliser un LEFT JOIN et à filtrer les valeurs NULL.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal