Requete sql access
Fermé
dewardo
-
28 mars 2012 à 12:56
OlivrT Messages postés 323 Date d'inscription lundi 2 novembre 2009 Statut Membre Dernière intervention 24 mai 2012 - 29 mars 2012 à 21:20
OlivrT Messages postés 323 Date d'inscription lundi 2 novembre 2009 Statut Membre Dernière intervention 24 mai 2012 - 29 mars 2012 à 21:20
4 réponses
OlivrT
Messages postés
323
Date d'inscription
lundi 2 novembre 2009
Statut
Membre
Dernière intervention
24 mai 2012
36
28 mars 2012 à 22:46
28 mars 2012 à 22:46
Pour que cela fonctionne il faut une valeur unique qui permet d'identifier un enregistrement dans vos deux tables ... j'ai supposé qu'il s'agit de zonecin.
Pour sélectionner tout ce qui se trouve dans T1 mais qui n'est pas dans T2:
Syntaxe Access :
SELECT T1.* FROM T1 INNER JOIN T2 ON (T1.zonecin = T2.zonecin)
WHERE (T2.zonecin Is Null);
bye
Pour sélectionner tout ce qui se trouve dans T1 mais qui n'est pas dans T2:
Syntaxe Access :
SELECT T1.* FROM T1 INNER JOIN T2 ON (T1.zonecin = T2.zonecin)
WHERE (T2.zonecin Is Null);
bye
blux
Messages postés
26533
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 décembre 2024
3 317
29 mars 2012 à 14:03
29 mars 2012 à 14:03
Salut,
il faut plutôt aller voir du côté de la jointure droite (right join on) ou gauche (left join on) à la place de l'équijointure (inner join on)...
Essaye l'assistant requête avec 'requête de non-correspondance'...
il faut plutôt aller voir du côté de la jointure droite (right join on) ou gauche (left join on) à la place de l'équijointure (inner join on)...
Essaye l'assistant requête avec 'requête de non-correspondance'...
OlivrT
Messages postés
323
Date d'inscription
lundi 2 novembre 2009
Statut
Membre
Dernière intervention
24 mai 2012
36
29 mars 2012 à 21:20
29 mars 2012 à 21:20
Essaye ceci :
SELECT T1.* FROM T1 LEFT JOIN T2 ON (T1.zonecin = T2.zonecin)
WHERE (T2.zonecin Is Null);
> Cette requête retourne tout ce qui se trouve dans T1 et qui n'est pas dans T2.
Pour l'inverse, il suffit d'inverser T1 et T2. Ci-dessous, la requête retournera tout ce qui se trouve dans T2 et pas dans T1
SELECT T2.* FROM T2 LEFT JOIN T1 ON (T2.zonecin = T1.zonecin)
WHERE (T1.zonecin Is Null);
Si tu nous expliquais plutôt ce que sont ces "cin" dont tu parles.
SELECT T1.* FROM T1 LEFT JOIN T2 ON (T1.zonecin = T2.zonecin)
WHERE (T2.zonecin Is Null);
> Cette requête retourne tout ce qui se trouve dans T1 et qui n'est pas dans T2.
Pour l'inverse, il suffit d'inverser T1 et T2. Ci-dessous, la requête retournera tout ce qui se trouve dans T2 et pas dans T1
SELECT T2.* FROM T2 LEFT JOIN T1 ON (T2.zonecin = T1.zonecin)
WHERE (T1.zonecin Is Null);
Si tu nous expliquais plutôt ce que sont ces "cin" dont tu parles.