Requetes SQL

JPL1 Messages postés 5 Date d'inscription mercredi 23 juillet 2003 Statut Membre Dernière intervention 11 mars 2010 - 11 mars 2010 à 13:14
cs_lamouchka Messages postés 2 Date d'inscription lundi 2 février 2009 Statut Membre Dernière intervention 19 septembre 2010 - 4 mai 2010 à 11:16
Bonjour,

J'ai 3 tables Contact.db reprend le signalétique des contacts
Groupes.db (Champ Grp_Id rreprend les groupes
et ConGrp.db qui relie les deux tables

Con_Id : N° du contact
Grp_Id : N° du groupe

Je veux avoir pour un Contact les groupes dont il ne fait pas partie
En access je suis parvenu pour par exmemple le contact 1 (Con_Id=1) avec 2 requetes
Requetes 1 :
SELECT ConGrp.Con_Id, ConGrp.Grp_Id
FROM ConGrp
WHERE (((ConGrp.Con_Id)=1));
Requetes 2 :
SELECT Groupe.Grp_Id, Requête1.Con_Id
FROM Groupe LEFT JOIN Requête1 ON Groupe.Grp_Id = Requête1.Grp_Id
WHERE (((Requête1.Con_Id) Is Null));

Comment pouvoir faire cela dans un TQuery ou d'une autre facons?

Merci pour votre collaboration
Jean-Philippe L.

2 réponses

cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
17 mars 2010 à 16:58
Bonjour,

tu places ton script SQL dans la propriété SQL du TQuery et tu peux le tester
en design time (active/true/false)

Si ton type de query ne réclame que cet élément bien sûr...

cantador
0
cs_lamouchka Messages postés 2 Date d'inscription lundi 2 février 2009 Statut Membre Dernière intervention 19 septembre 2010
4 mai 2010 à 11:16
Bonjour,

je vien a l'instant de lire ton message, voila je t'envoi une reponse j'espere que ca t'aidera...

1. iif ((ConGrp.Con_Id)is nul, 0,ConGrp.Con_Id )---- veux dire que si (ConGrp.Con_Id)est nul il t'affiche 0 sinon il affiche le resultat normal.
2.l'asstuce est de réecrire la requete en complet (select*...)suivie de son nom .

Requet1:

SELECT iif ((ConGrp.Con_Id)is nul, 0,ConGrp.Con_Id ) , ConGrp.Grp_Id
FROM ConGrp
WHERE ((ConGrp.Con_Id)=1);

Requetes 2 :

SELECT Groupe.Grp_Id, Requête1.Con_Id
FROM Groupe
LEFT JOIN (SELECT iif ((ConGrp.Con_Id)is nul, 0,ConGrp.Con_Id ) , ConGrp.Grp_Id
FROM ConGrp
WHERE ((ConGrp.Con_Id)=1);
)Requête1
ON
(Groupe.Grp_Id = Requête1.Grp_Id)

Voila, j'espeer pouvoir t'aider.
0
Rejoignez-nous