Vous pouvez utiliser LEFT JOIN
et IS NULL
:
SELECT Persons.LastName, Persons.FirstName
FROM Persons
LEFT JOIN Orders ON Persons.id = Orders.Person_id
WHERE Orders.Person_id IS NULL;
Le résultat d'une jointure gauche contient toujours tous les enregistrements de la table "gauche" (Personnes), même si la condition de jointure ne trouve aucun enregistrement correspondant dans la table "droite" (Commandes). Lorsqu'il n'y a pas de correspondance, les colonnes de la "bonne" table seront NULL
dans le jeu de résultats.