Bonjour,
Voilà j'ai 3 requêtes et je voudrais les réunir en une seule. Je m'explique j'ai une base de données qui va être utilisée à la fois pour la création d'un organigramme et d'un annuaire, ici on parle de la partie annuaire. Je suis en train de réaliser un moteur de recherche et je voudrais afficher toutes les personnes présentes dans la base de données.Voici une image du MLD
De base toutes les personnes sont dans la table AGENT, cependant on a besoin aussi de savoir dans quel département ils font partis ou dans quelle section(Sachant qu'un département regroupe plusieurs sections) ou dans une équipe(Sachant qu'une section regroupe plusieurs équipes).
J'utilise MySQL comme SGBD.
Exemple:
Furil est un chef de département
Toto est un chef de section
Jeanbon est un chef d'équipe
Voilà les requêtes permettant de lister :
Les personnes faisant partie d'un service:
Les personnes faisant partie d'une section sachant qu'une section fait partie d'un département :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $requete2 = ('SELECT Lib_agent,No_agent,Lib_departement,Lib_fonction FROM AGENT,AGENT_DEPT,DEPARTEMENT,FONCTION WHERE agent.Id_agent = agent_dept.Id_agent AND agent_dept.Id_departement = departement.Id_departement AND agent.Id_fonction = fonction.Id_fonction ');
Enfin les personnes faisant partie d'une équipe sachant qu'une équipe fait partie d'une section :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 $requete3 = ('SELECT Lib_agent,No_agent,Lib_departement,Lib_section,Lib_fonction FROM AGENT,AGENT_SECTION,SECTION,DEPARTEMENT,FONCTION WHERE agent.Id_agent = agent_section.Id_agent AND agent_section.Id_section = section.Id_section AND section.Id_departement = departement.Id_departement AND agent.Id_fonction = fonction.Id_fonction ');
J'ai déjà fait le script fonctionnel qui affiche le tableau selon la requête exécuté lors de la recherche. Ce que j'aimerai c'est qu'avant que la recherche soit effectuée, qu'un tableau soit affiché, répertoriant toutes les personnes donc ici Furil, Toto et Jeanbon les un en dessous des autres avec toutes les informations qui vont avec donc dans quel département, service ou/et équipe ils font partie.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $requete4 = ('SELECT Lib_agent,No_agent,Lib_departement,Lib_section,Lib_equipe,Lib_fonction FROM AGENT,AGENT_EQUIPE,EQUIPE,SECTION,SERVICE,FONCTION WHERE agent.Id_agent = agent_equipe.Id_agent AND agent_equipe.Id_equipe = equipe.Id_equipe AND equipe.Id_section = section.Id_section AND section.Id_departement=departement.Id_departement AND agent.Id_fonction = fonction.Id_fonction ');
Vu qu'il y a des ajout de champs d'une requête à une autre UNION n'est pas envisageable.
Voilà j'espère avoir bien expliqué, s'il y a d'autres choses à expliquer je le ferai avec plaisir !
Je vous remercie d'avance et vous souhaite une bonne journée.![]()
Partager