Requête.

52 réponses
Avatar
Albatros.Ch.B
Bonjour à tous,

dans une Base de Données Adhérents je souhaiterai faire une seule
requête qui m'extrairait ceux qui font de la chorale, tantôt l'adhérent
tantôt son conjoint, Mais voila je ne sais pas l'écrire.
Je sais faire une requête pour l'un ou pour l'autre, mais pas une seule
qui me donnerait l'un ou l'autre.
J'espère que vous comprendrez mon charabia.
Par avance merci de votre aide.
Un C joint :
http://cjoint.com/?BKflPnKEGXm

10 réponses

1 2 3 4 5
Avatar
P3859
Le 05/11/2012 11:45, Albatros.Ch.B a écrit :
Bonjour à tous,

dans une Base de Données Adhérents je souhaiterai faire une seule requête qui m'extrairait ceux qui font de la chorale, tantôt
l'adhérent tantôt son conjoint, Mais voila je ne sais pas l'écrire.
Je sais faire une requête pour l'un ou pour l'autre, mais pas une seule qui me donnerait l'un ou l'autre.
J'espère que vous comprendrez mon charabia.
Par avance merci de votre aide.
Un C joint :
http://cjoint.com/?BKflPnKEGXm




peut être :

SELECT Table1.nom, Table1.prénom, Table1.[conjoint prénom], Table1.[conjoint nom], Table1.choral, Table1.[choral conjoint]
FROM Table1
WHERE (((Table1.choral)=Yes) AND ((Table1.[choral conjoint])=Yes));
Avatar
Albatros.Ch.B
Le 05/11/2012 12:35, P3859 a écrit :
Le 05/11/2012 11:45, Albatros.Ch.B a écrit :
Bonjour à tous,

dans une Base de Données Adhérents je souhaiterai faire une seule
requête qui m'extrairait ceux qui font de la chorale, tantôt
l'adhérent tantôt son conjoint, Mais voila je ne sais pas l'écrire.
Je sais faire une requête pour l'un ou pour l'autre, mais pas une
seule qui me donnerait l'un ou l'autre.
J'espère que vous comprendrez mon charabia.
Par avance merci de votre aide.
Un C joint :
http://cjoint.com/?BKflPnKEGXm




peut être :

SELECT Table1.nom, Table1.prénom, Table1.[conjoint prénom],
Table1.[conjoint nom], Table1.choral, Table1.[choral conjoint]
FROM Table1
WHERE (((Table1.choral)=Yes) AND ((Table1.[choral conjoint])=Yes));




Merci, mais je l'écris où cette formule magique s'il te plait ?
http://cjoint.com/?BKfrdooVEGa

http://cjoint.com/?BKfre3nrbXf
Avatar
Gloops
Albatros.Ch.B a écrit, le 05/11/2012 17:06 :
SELECT Table1.nom, Table1.prénom, Table1.[conjoint prénom],
Table1.[conjoint nom], Table1.choral, Table1.[choral conjoint]
FROM Table1
WHERE (((Table1.choral)=Yes) AND ((Table1.[choral conjoint])=Yes)) ;




Merci, mais je l'écris où cette formule magique s'il te plait ?
http://cjoint.com/?BKfrdooVEGa

http://cjoint.com/?BKfre3nrbXf




Bonjour,

Les illustrations montrent l'éditeur de requêtes, donc c'est le bon
point de départ.

A gauche de la première barre d'outils, le premier bouton est une liste
déroulante, qui présente les différents modes d'affichage.

Choisir le mode SQL, et coller le code copié du forum.
Ensuite, repasser en mode exécution (ou données -tiens j'ai un doute sur
le mot, mais après tout il n'y en a guère plus que quatre ou cinq) po ur
voir le résultat.
Avatar
Albatros.Ch
"Gloops" a écrit dans le message de news:
k792nk$d9f$
Albatros.Ch.B a écrit, le 05/11/2012 17:06 :
SELECT Table1.nom, Table1.prénom, Table1.[conjoint prénom],
Table1.[conjoint nom], Table1.choral, Table1.[choral conjoint]
FROM Table1
WHERE (((Table1.choral)=Yes) AND ((Table1.[choral conjoint])=Yes));




Merci, mais je l'écris où cette formule magique s'il te plait ?
http://cjoint.com/?BKfrdooVEGa

http://cjoint.com/?BKfre3nrbXf




Bonjour,

Les illustrations montrent l'éditeur de requêtes, donc c'est le bon
point de départ.

A gauche de la première barre d'outils, le premier bouton est une liste
déroulante, qui présente les différents modes d'affichage.

Choisir le mode SQL, et coller le code copié du forum.
Ensuite, repasser en mode exécution (ou données -tiens j'ai un doute sur
le mot, mais après tout il n'y en a guère plus que quatre ou cinq) pour
voir le résultat.

En mode SQL je trouve ça:

SELECT adhérents.Titre, adhérents.Prénom, adhérents.Nom, adhérents.Adresse1,
adhérents.Adresse2, adhérents.[Code Postal], adhérents.Ville,
adhérents.CONJOINT_PRENOM, adhérents.CONJOINT_NOM, adhésion.année,
adhérents.CHORALE, adhérents.CHORALE_C
FROM adhérents INNER JOIN adhésion ON adhérents.refadherent =
adhésion.refadherent
GROUP BY adhérents.Titre, adhérents.Prénom, adhérents.Nom,
adhérents.Adresse1, adhérents.Adresse2, adhérents.[Code Postal],
adhérents.Ville, adhérents.CONJOINT_PRENOM, adhérents.CONJOINT_NOM,
adhésion.année, adhérents.CHORALE, adhérents.CHORALE_C
HAVING (((adhésion.année) 13) AND ((adhérents.CHORALE)=True));

Que dois-je modifier et à quel endroit pour que cela puisse fonctionner?
Avatar
Albatros.Ch
"Gloops" a écrit dans le message de news:
k792nk$d9f$
Albatros.Ch.B a écrit, le 05/11/2012 17:06 :
SELECT Table1.nom, Table1.prénom, Table1.[conjoint prénom],
Table1.[conjoint nom], Table1.choral, Table1.[choral conjoint]
FROM Table1
WHERE (((Table1.choral)=Yes) AND ((Table1.[choral conjoint])=Yes));




Merci, mais je l'écris où cette formule magique s'il te plait ?
http://cjoint.com/?BKfrdooVEGa

http://cjoint.com/?BKfre3nrbXf




Bonjour,

Les illustrations montrent l'éditeur de requêtes, donc c'est le bon
point de départ.

A gauche de la première barre d'outils, le premier bouton est une liste
déroulante, qui présente les différents modes d'affichage.

Choisir le mode SQL, et coller le code copié du forum.
Ensuite, repasser en mode exécution (ou données -tiens j'ai un doute sur
le mot, mais après tout il n'y en a guère plus que quatre ou cinq) pour
voir le résultat.

Voila ce que j'ai obtenu :
http://cjoint.com/?BKgwKGItZ7U
http://cjoint.com/?BKgwLYTvP9P
Mais il manque le résultat ?
Avatar
Gloops
Albatros.Ch a écrit, le 06/11/2012 22:38 :
Voila ce que j'ai obtenu :
http://cjoint.com/?BKgwKGItZ7U
http://cjoint.com/?BKgwLYTvP9P
Mais il manque le résultat ?




Ah, j'avais mal compris ... Plus exactement, on a un résultat qui ne
comporte aucun enregistrement.

Existe-t-il au moins un enregistrement qui respecte la clause HAVING ?

Pour en avoir le coeur net, ça serait bien de voir ce que donne SELECT *
avec la même clause FROM, donc jusqu'à avant GROUP BY.

Ensuite on remet GROUP BY, et pour finir on remet HAVING. En exécutant à
chaque étape.

Et puis on voit quand on a quelque chose, et quand on n'a rien.
Avatar
Albatros.Ch
"Gloops" a écrit dans le message de news:
k7dd5g$hni$
Albatros.Ch a écrit, le 06/11/2012 22:38 :
Voila ce que j'ai obtenu :
http://cjoint.com/?BKgwKGItZ7U
http://cjoint.com/?BKgwLYTvP9P
Mais il manque le résultat ?




Ah, j'avais mal compris ... Plus exactement, on a un résultat qui ne
comporte aucun enregistrement.

Non tu avais bien compris, mais je suis un débutant de 67 ans qui ne
maitrise pas l'anglais.

Existe-t-il au moins un enregistrement qui respecte la clause HAVING ?

Pour en avoir le cour net, ça serait bien de voir ce que donne SELECT *
avec la même clause FROM, donc jusqu'à avant GROUP BY.

Ensuite on remet GROUP BY, et pour finir on remet HAVING. En exécutant à
chaque étape.

Et puis on voit quand on a quelque chose, et quand on n'a rien.

Je vais suivre tes recommandations et en rendrai compte A+
Avatar
Albatros.Ch
"Gloops" a écrit dans le message de news:
k7dd5g$hni$
Albatros.Ch a écrit, le 06/11/2012 22:38 :
Voila ce que j'ai obtenu :
http://cjoint.com/?BKgwKGItZ7U
http://cjoint.com/?BKgwLYTvP9P
Mais il manque le résultat ?




Ah, j'avais mal compris ... Plus exactement, on a un résultat qui ne
comporte aucun enregistrement.

Existe-t-il au moins un enregistrement qui respecte la clause HAVING ?

Pour en avoir le coeur net, ça serait bien de voir ce que donne SELECT *
avec la même clause FROM, donc jusqu'à avant GROUP BY.

Ensuite on remet GROUP BY, et pour finir on remet HAVING. En exécutant à
chaque étape.

Et puis on voit quand on a quelque chose, et quand on n'a rien.

Je suis toujours bloqué avec la formule ?
http://cjoint.com?BKhpdAefe5t
Avatar
Albert
Bonjour Albatros et Gloops
"Albatros.Ch" a écrit dans le message de
news:509ab541$0$21223$

"Gloops" a écrit dans le message de news:
k7dd5g$hni$



Voici un conseil de débutant, pourquoi ne pas recommencer avec une requête
simple ?
Nom, prenom, chorale = vrai
Tu regardes la REQUETE et tu bascules au mode SQL et tu examines.
Et celles que tu écris en mode SQL tu bascules en mode CREATION de REQUETE.
Ensuite tu ajoutes ....
Je ne vois pas pourquoi tu as besoin de regrouper pour le moment, cela
complique un peu le tout.
Faire un Copier/Coller du code SQL et l'inclure dans le mssage est mieux
qu'une image.

Je regarde, j'ai exemple de ce que tu recherches.


--
albertri-at-videotron.ca.invalid
Avatar
Albert
"Albatros.Ch" a écrit dans le message de
news:509ab541$0$21223$

"Gloops" a écrit dans le message de news:
k7dd5g$hni$



Voici un conseil de débutant, pourquoi ne pas recommencer avec une
requête simple ?
Nom, prenom, chorale = vrai



Voici un exemple d'une requête simple sur une de mes bases.
Je recherche les membres ayant pour nom de famille "Richard" ou ayant le
prenom "albert"
(Lastname et firstname en anglais sont la traduction de Nom et Prenom)

En SQL
SELECT TBLmbcc.LASTNAME, TBLmbcc.FIRSTNAME, ([lastname]="richard") Or
([Firstname]="albert") AS expression
FROM TBLmbcc
WHERE (((([lastname]="richard") Or ([Firstname]="albert"))=Yes));

En utilisant OR Access trouve 12 membres remplissant cette condition, si je
remplace OR par AND access trouve un seul nom, le mien.

Voici l'image de la requete, voir comment l'expression a été créée.
http://cjoint.com/?BKhweVl4uoC

Je vous suggère la requete suivante

Nom Prenom Expressiom:([chorale]="oui") OU ([chorale_c]="oui")

Bon travail continuez

--
albertri-at-videotron.ca.invalid
1 2 3 4 5