IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

SELECT sur le même champ avec des valeurs différentes


Sujet :

Requêtes MySQL

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2015
    Messages : 31
    Points : 28
    Points
    28
    Par défaut SELECT sur le même champ avec des valeurs différentes
    Bonjour,

    J'ai un soucis. Je cherche à effectuer un select sur 2 champs mais avec des valeurs différentes en résultat, et sur une seule ligne.
    Je m'explique :

    Considérons 2 tables : utilisateurs et superieurs_hierarchiques

    utilisateurs (id, nom, prenom etc...)
    superieurs_hierarchiques (id, id_user, id_n1, id_n2) --> id_n1 correspond à l'id de la table "utilisateurs" du manager direct de "id_user". "id_n2" correspond à l'id_user du supérieur au dessus de n1.

    Je cherche à effectuer une requête qui affiche les nom, prenom et id d'un utilisateur recherché (mettons l'utilisateur 1) ainsi que les nom, prenom et id de son manager direct (n1).
    Tous les noms, prénoms, id se trouvent dans la table "utilisateurs".

    J'ai donc une requête du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT u1.id id_user, u1.nom nom_user, u1.prenom prenom_user, u2.id id_manager, u2.nom nom_manager, u2.prenom prenom_manager
    FROM utlisateurs u1
    LEFT JOIN utilisateurs u2 ON u1.id = u2.id
    LEFT JOIN superieurs_hierarchiques s ON u1.id = s.id_user AND u1.id = s.id_n1
    WHERE u1.id = 1
    Je veux donc récupérer l'id, le nom et le prénom de mon utilisateur 1 ainsi que l'id, le nom et le prénom de son manager dont on peut trouver l'id dans la table "superieurs_hierarchiques".
    J'aurais donc un résultat du genre :
    id_user nom_user prenom_user id_manager nom_manager prenom_manager
    1 nom1 prenom1 2 nom2 prenom2

    Si besoin de précision, n'hésitez pas...

    Merci,
    Bonne journée

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 950
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 950
    Points : 5 849
    Points
    5 849
    Par défaut
    C'était pas loin, mais en fait il suffit de suivre le "chemin naturel" dans l'écriture des jointures :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT u1.id id_user, u1.nom nom_user, u1.prenom prenom_user, u2.id id_manager, u2.nom nom_manager, u2.prenom prenom_manager
      FROM utlisateurs u1
      left JOIN superieurs_hierarchiques s ON s.id_user = u1.id  
      LEFT JOIN utilisateurs u2 ON u2.id = s.id_n1
     WHERE u1.id = 1

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2015
    Messages : 31
    Points : 28
    Points
    28
    Par défaut
    Effectivement, c'était pas loin !
    Je commençais à plus réussir à réfléchir correctement à force...

    Merci beaucoup, je passe le sujet en "Résolu" !
    A bientôt

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 12/11/2015, 06h57
  2. Un SELECT sur une même colonne avec ID différents
    Par grandthor dans le forum Requêtes
    Réponses: 1
    Dernier message: 11/08/2011, 19h21
  3. Concaténer plusieurs champs avec des valeurs uniques
    Par stefposs dans le forum VBA Access
    Réponses: 10
    Dernier message: 30/05/2007, 17h42
  4. [JS] contrôle sur la saisie d'un champ avec des valeurs numeriques ?
    Par adil_vpb dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 22/03/2007, 11h12
  5. Réponses: 2
    Dernier message: 08/05/2006, 21h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo