Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/02/2011, 21h44   #1
Nouveau Membre du Club
 
Avatar de DarkChamallo
 
Inscription : mai 2002
Messages : 106
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 106
Points : 26
Points : 26
Par défaut Etats : liste de régions et pour chaque région les départements

Bonsoir,

Voilà exactement 6 heures que je m'explose les yeux devant mon écran et ma tête au fond des forums. Donc là j'arrête et j'appelle à l'aide :

J'arrive à créer un état qui me liste mes régions, facile vu que j'ai une table région. Bien sûr j'ai une jointure avec une table départements pour que chaque département soit associé à une région mais là je ne comprends absolument pas comment dire à Access : cherche toutes les régions et pour chaque région tous les départements et affiche ainsi :

BRETAGNE
- côtes d'armor
- Ile et vilaine
- ...
ILE DE FRANCE
- val d'oise
- hauts de seine
- ...

etc...

J'ai beau chercher dans les SELECT, dans les GROUP BY, dans les INNER JOIN, rien ne fonctionne donc là je me dis qu'ici ça doit vous paraître comme quelque chose parmi les plus simples sauf que moi c'est le calvaire .

Donc pitié que dois-je mettre dans la requète principale (SELECT...) qui génère l'état ?

Argh ! Merci

PS : peu importe que la question des régions et départements soit pertinente ou non, ce que je veux c'est comprendre et apprendre à créer des états de ce type, quel que soit ce dont on parle dans la base en question
DarkChamallo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2011, 22h01   #2
Membre Expert
 
Inscription : août 2006
Messages : 1 435
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 1 435
Points : 1 753
Points : 1 753
Bonsoir,
Pour lier un département à sa région, il faut un champ commun aux 2 tables contenant la même valeur
exemple :
Table régions :
n Nom
1 Champagne
2 Bourgogne

La table Départements doit donc contenir
nom num n
Aube 10 1
Marne 51 1
Yonne 89 2

le champ n commun aux 2 tables permet de retrouver les département d'une région
Dans une requête, cela se fera par un simple lien
helas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/02/2011, 06h33   #3
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 609
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 609
Points : 30 959
Points : 30 959
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Bonjour

En fait, je pense que c'est du à un problème de construction d'état et non de requête.

Ta requête doit tout te renvoyer avec un champ pour la région et un champ pour le département.

Il va de soit que la région apparaitra plusieurs fois, ensuit il te faudra dans ton état créer un regroupement pour la région.

Je te recommande la lecture de ce tuto avec sa partie sur les regroupements :Construire un état et en maîtriser les objets

Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.

Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2011, 09h53   #4
Nouveau Membre du Club
 
Avatar de DarkChamallo
 
Inscription : mai 2002
Messages : 106
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 106
Points : 26
Points : 26
Merci pour vos réponses mais rien n'y fait. En effet j'ai réussi à faire apparaître ET régions Et départements mais comme évoqué je ne veux que chaque région ne s'affiche qu'une seule fois. Et là le GROUP BY semble inexistant dans Access ou bien ne pas supporter un SELECT *

Quel que soit le code pour construire l'état je n'y arrive pas :

Code :
SELECT * FROM departements INNER JOIN regions ON regions.id=departements.id;
Là si je mets la région en en-tête c'est le moins pire des résultats puisque ça fonctionne mais évidemment lorsque les départements passent à une autre région sur la même page, c'est mort

Donc le but c'est de ne rien mettre dans l'en-tête et faire apparaître une seule fois le nom de la région puis tous les départements puis le nom de la région suivante puis ses départements, etc... et peu importe que la liste continue sur une page suivante sans qu'on reproduise le nom de la région...

@#%*$!!! avec PHP on fait ça en 4 minutes chrono Vivement que je désinstalle Access

Bon, je vais lire le tutoriel en espérant faire fonctionner la fonction regrouper dans les états... qui pour l'instant ne donne rien
DarkChamallo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2011, 10h04   #5
Nouveau Membre du Club
 
Avatar de DarkChamallo
 
Inscription : mai 2002
Messages : 106
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 106
Points : 26
Points : 26
Au temps pour moi !!! Je confondais l'en-tête de groupe et l'en-tête de l'état donc pour les padoués du lundi comme moi, suivez le conseil d'helas en cherchant dans la page qu'il indique la partie
Citation:
II-G. Les regroupements et les tris dans les états
ce qui vous évitera de perdre du temps

Merci encore
DarkChamallo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h56.


 
 
 
 
Partenaires

Hébergement Web