J'ai trois tables. Tableau1 (ID, Nom), Table2 (ID, Nom) et Table3 (T1.Id, T2.Id) J'ai besoin d'une commande SELECT qui me montre tout de TABLE1 où l'identifiant n'est pas le même de la clé étrangère T1.Id de TABLE 3 . p>
Y a-t-il un moyen de faire ce travail? P>
3 Réponses :
En supposant que vous recherchez tout dans TABLE1 qui n'est pas présent dans la colonne T1.ID de TABLE3.
SELECT *
FROM Table1
WHERE id NOT IN (SELECT t1id
FROM Table3);
En effet, vous demandez de voir des enregistrements de table1 où un T1ID correspondant n'existe pas dans le tableau3?
ALORS: P>
SELECT *
FROM Table1 AS t1
WHERE NOT EXISTS (
SELECT 1
FROM Table3 AS t3
WHERE t3.t1id = t1.id
);
SELECT Table1.*
FROM Table1
LEFT JOIN Table3 ON Table1.id = Table3.t1id
WHERE Table3.t1id IS NULL;