|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() kheira lakel Inscription : novembre 2010 Messages : 20 ![]() |
Bonjour tout le monde
Je suis nouveau sur ce forum, alors si jamais l'allure de mes messages ne convient pas, soyez indulgent. Bon voici mon problème. Manquant peut-être d'un peu d'expérience en SQL je bloque sur une requête assez complexe que je dois réaliser. Pour commencer je dois réaliser cette requête par SQL . En fait cette requête sera basée sur l'extraction de données dans 5 tables différentes, comme de raison je voudrais tenter de faire une seule et unique requête pour récupérer les données voulues, si c'est faisable bien entendu. Pour faire une histoire courte, je dois gérer les centres des votes dans ma wilaya. J’ai besoin d’imprimer les listes pour chaque centre. Voici donc les tables et les champs que j’ai utilisé. « c’est ma conception » --------------------------- DAÏRA Ndaira Nomdaira Ncommune ----------------------------- COMMUNE Ncommune NomCommune ------------------------------ CENTRE Nomcentre Chef Centre Adjoint1 Adjoint2 Adjoint3 ------------------------------- BUREAU Présidant Secrétaire Assesseure Suppléant1 Suppléant2 --------------------------- PERSONNE Qualification NomPrenom DateNaissance Observation Comment obtenir les listes de tous les bureaux d’un centre X dans le Daira X dans la commune X voir la liste ; Daira x Commune X Centre x Nombre bureaux :nb Chef x Adjoint1 X Adjoint2 X Adjoint3 X table voire la Miniatures attachées J'ai tenté désespérément de réaliser cette requête, mais je n'arrive pas à trouver la bonne solution. Alors si quelqu'un parmi vous pourrait m'indiquer la marche à suivre, ça me serait d'un grand secours car je vais avoir plusieurs requêtes du même genre à réaliser. Merci d'avance pour vos savantes réponses. |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Inscription : mai 2002 Messages : 1 657 ![]() |
Bonjour,
Le descriptif de vos table ne permet pas de faire le lien entre un centre et une commune. Ni entre un bureau et ...? A partir de là on ne peut pas faire grand chose |
|
|
00
|
|
|
#3 |
![]() ![]() Yves Développeur informatique Inscription : janvier 2007 Messages : 3 883 ![]() |
Et je rajouterais que, bien que je ne connaisse pas la définition de la (du?) DAIRA, je la suppose être une entité suppérieure à la commune.
Il y a plusieurs communes dans une Daira, c'est bien ça ? Si c'est la cas, le lien entre Daira et commune est fait à l'envers. C'est la commune qui doit pointer vers une Daira, et non pas la daira qui pointe vers une commune. Donc il ne faut pas mettre un NCommune dans la table Daira, mais plutôt un NDaira dans la table commune.
__________________
Sevyc64 --- Le partage est notre force NON AU LANGAGE SMS & FAUTES VOLONTAIRES SUR LES FORUMS |
|
|
00
|
|
|
#4 | ||
|
Membre expérimenté
![]() Inscription : octobre 2002 Messages : 654 ![]() |
Bonjour,
Comme problème de conception je vois aussi pour la table Personne, il ne semble pas y avoir d'identifiant, il vaut mieux séparer le nom du prénom. car s'il est très simple de les présenter concaténer, il est très compliquer de les découper après coup. Par ailleurs pour la table Bureau, qu'est-ce qui se passe lorsqu'il y a plus de 2 suppléants. Est-ce que le bureau n'a pas de caractéristiques autres que les noms des présidents assesseur, et suppléants, comme un nom, une adresse, une relation avec une daira, avec un centre. Personnellement je créerai une table bureau avec les caractéristiques communes, et une table d'association BureauPersonnel. La table BureauPersonnel aurait une structure du genre. NBureau NPersonne NTypePersonnel RangPersonnel entier Avec une clé étrangère de BureauPersonnel sur personne. une autre clé étrangère sur la table TypePersonnel TypePersonnel de structure NTypePersonnel LibelleTypePersonnel exemple de valeur Code :
NCentre NTypePersonnel NPersonne. Cordialement Soazig |
||
|
|
00
|
|
|
#5 |
![]() ![]() |
Pour résumer les interventions des précédents forumeurs, il faut revoir le modèle de données, en commençant par écrire des règles de gestion claires qui décriront les associations entre daira, commune, centre, bureau et personne.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
Copyright © 2000-2012 - www.developpez.com