SQL "EXCEPTION JOIN" sous ACCESS [Résolu]

HDelarse 13 Messages postés mardi 14 octobre 2003Date d'inscription 12 avril 2005 Dernière intervention - 31 mars 2005 à 10:13 - Dernière réponse : tbbuim1 940 Messages postés jeudi 20 février 2003Date d'inscription 3 février 2011 Dernière intervention
- 31 mars 2005 à 16:32
Bonjour à tous,
J'ai un problême de syntax dans une requète pour ACCESS, je n'arrive pas
à formuler l'expression EXCEPTION JOIN entre deux tables, pour extraire le
enregistrements discordants. Peut-on utiliser cette expression (si oui, comment)
ou y a t'il un équivalent.
Ma requète :
"SELECT a.IdPersonne AS Num, a.NomPersonne AS Nom,
a.PrenomPersonne AS Prenom
FROM T_Personne a EXCEPTION JOIN T_Reglement b
WHERE b.AnneeCotisation = Year(Date)
AND a.IdPersonne = b.IdPersonne"
Sans EXCEPTION JOIN, la requète me renvoie bien les enregistrements
concordants, mais pour avoir l'inverse, Access me lève une erreur
dans la close FROM.
Si quelqu'un a une idée, par avance merci.
Afficher la suite 

5 réponses

Meilleure réponse
HDelarse 13 Messages postés mardi 14 octobre 2003Date d'inscription 12 avril 2005 Dernière intervention - 31 mars 2005 à 15:47
3
Merci
cela fonctionne, mais il me reste un petit problème, c'est les personnes qui sont
dans la base de donnée et qui n'ont pas fait de réservation et ne sont pas
membres, par exemple lors de la création, je dois pouvoir entrer un nom et
ses coordonnées avant qu'il ne soit présent dans une autre table.
J'ai réussi avec
SELECT DISTINCT a.IdPersonne AS Num, a.NomPersonne AS Nom, a.PrenomPersonne AS Prenom
FROM T_Personnes AS a
WHERE a.IdPersonne NOT IN (SELECT a.IdPersonne
FROM T_Personnes AS a, T_Reglement AS b
WHERE b.AnneeCotisation='2005' And a.IdPersonne=b.IdPersonne)
ORDER BY a.NomPersonne;
Mais j'esperais plus simple.
Merci encore.

Merci HDelarse 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 95 internautes ce mois-ci

tbbuim1 940 Messages postés jeudi 20 février 2003Date d'inscription 3 février 2011 Dernière intervention - 31 mars 2005 à 14:27
0
Merci
Essayes avec EXCEPT

SELECT Colonne1 [,colonne2]

FROM TABLE1 [,TABLE2]

[WHERE]

EXCEPT

SELECT Colonne1...
TBBUIM
HDelarse 13 Messages postés mardi 14 octobre 2003Date d'inscription 12 avril 2005 Dernière intervention - 31 mars 2005 à 14:53
0
Merci
Merci, mais cela ne donne pas le résultat escompté...
Bon, je te donne plus de détails, il s'agit de la gestion d'un club.
J'ai une table ou il y a des Personnes
J'ai des "Membres" et des "Externes",
Je veux charger deux FlexGrid, une Membres, l'autre Externes.
Pour vérifier leur état, je recherche dans une table "Réglement" si
IdPersonne a réglé sa cotisation Annuelle.
La dificulté, c'est que j'ai des personnes qui ont effectué un règlement
pour une sortie (donc, ils sont présent dans la table règlement), mais d'autre
n'y sont pas ( ex: les reservations).
J'espère avoir été explicit et te remerci encore...
tbbuim1 940 Messages postés jeudi 20 février 2003Date d'inscription 3 février 2011 Dernière intervention - 31 mars 2005 à 15:19
0
Merci
Dans ce cas, pourquoi ne pas utiliser un NOT IN

Qui renvoi les éléments qui ne sont pas dans la requête comparée

Exemple:

Select IdPersonne FROM Reservations

NOT IN

Select IdPersonne FROM Règlements



Retourne IdPersonne de Reservations qui ne sont pas dans les règlements

TBBUIM
tbbuim1 940 Messages postés jeudi 20 février 2003Date d'inscription 3 février 2011 Dernière intervention - 31 mars 2005 à 16:32
0
Merci
C'est cool alors

Mais personnellement je ne trouve pas cette requête compliquée

C'est sur c'est pas du select * from Table, mais bon, ça va

N'oublies pas de mettre réponse acceptée. Merci


TBBUIM

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.