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 :

Jointure 1-n : résultat en une seule ligne


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 62
    Points : 43
    Points
    43
    Par défaut Jointure 1-n : résultat en une seule ligne
    Bonjour,

    Tout d'abord veuillez m'excuser si jamais ce sujet a déjà été traité, je n'ai pas réussi à trouvé de réponse...

    Voilà, je cherche à faire une requête me permettant lorsque je fais une jointure 1-n, de récupéré tous les résultats d'une id sur une seule ligne, je sais pas si je m'exprime bien...

    En gros j'ai 2 tables (ce n'est pas moi qui en ait fait la structure) :

    people :
    id firstname lastname nickname
    1 Paul Martin Paulo
    2 Rémi Blanc Rems

    people_data
    people_id type content
    1 type0 valeur0
    1 type1 valeur1
    1 type2 valeur2
    2 type0 valeur0
    2 type2 valeur2

    Je sais faire des requêtes pour récupérer et associer les données des deux tables... mais ça me fait une ligne par donnée se trouvant dans la table people_data. Et quand j'essai d'avoir qu'une seule ligne par people, je n'ai pas toutes les données de la table people_data...

    Est-il possible d'avoir tous les résultats de people_data sur une seule ligne pour chaque people ?

    exemple :

    firstname lastname nickname type0 type1 type2
    Paul Martin Paulo valeur0 valeur1 valeur2
    Rémi Blanc Rems valeur0 null valeur2


    Merci d'avance pour vos réponses

  2. #2
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Points : 13 092
    Points
    13 092
    Par défaut
    Bonjour,
    Citation Envoyé par Darkroro Voir le message
    Tout d'abord veuillez m'excuser si jamais ce sujet a déjà été traité, je n'ai pas réussi à trouvé de réponse...

    Cherchez avec le mot clef "pivot". Les exemples sont nombreux

  3. #3
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Ce que vous cherchez à faire est de la cosmétique. Ce n'est pas le boulot du SGBD mais celui de l'application qui présente les données.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « 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 la suite Linux Mageïa !

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 62
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par aieeeuuuuu Voir le message
    Cherchez avec le mot clef "pivot". Les exemples sont nombreux
    Je savais pas que ça s'appelait comme ça
    Je pense avoir trouvé une solution qui pourrait me convenir

    Merci

  5. #5
    Membre habitué
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 79
    Points : 170
    Points
    170
    Par défaut
    Citation Envoyé par CinePhil Voir le message
    Ce que vous cherchez à faire est de la cosmétique. Ce n'est pas le boulot du SGBD mais celui de l'application qui présente les données.
    Justement CinePhil, je me demandais si on (les gens en général) avaient vraiment besoin de la clause PIVOT?
    Je n'arrive pas à trouver un bon exemple où cette fonction serait vraiment pratique (voire indispensable). (Ou alors, c'est que mon exemple n'est pas en 3NF).

  6. #6
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Points : 8 678
    Points
    8 678
    Par défaut
    Bonsoir @apaul,

    Très bonne question.

    PIVOT ne fait pas parti de la norme SQL sauf erreur de ma part.
    PIVOT c'est de la cosmétique pour des utilisateurs frustrés d'Access comme SQLpro saurait le dire
    Si il n'y a pas eu d'évolution (En plus on est sous MySQL ici) question performance, à éviter.

    Citation Envoyé par apaul
    Je n'arrive pas à trouver un bon exemple où cette fonction serait vraiment pratique (voire indispensable)
    Moi non plus.
    En tous les cas même si cette notion a été implémentée depuis SQL Server 2005, je ne m'en suis jamais servis.

    Cordialement,
    « Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions. »
    - Confucius -

    Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL
    Tous les cours Office
    Solutions d'Entreprise



  7. #7
    Membre habitué
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 79
    Points : 170
    Points
    170
    Par défaut
    Citation Envoyé par Chtulus Voir le message
    Moi non plus.
    En tous les cas même si cette notion a été implémentée depuis SQL Server 2005, je ne m'en suis jamais servis.
    Merci beaucoup Chtulus, ca me réconforte

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

Discussions similaires

  1. Requête pour résultats sur une seule ligne
    Par jobine2011 dans le forum Développement
    Réponses: 3
    Dernier message: 05/01/2011, 17h06
  2. Regroupement de résultats sur une seul ligne
    Par ximun974 dans le forum Requêtes
    Réponses: 3
    Dernier message: 30/12/2010, 12h55
  3. jointure qui retourne tout sur une seule ligne
    Par Ralfman68 dans le forum Requêtes
    Réponses: 9
    Dernier message: 12/10/2007, 21h52
  4. Plusieurs résultats sur une seule ligne
    Par Morphorpse dans le forum Langage SQL
    Réponses: 4
    Dernier message: 27/08/2007, 19h36
  5. Relation un à n : mettre les résultats sur une seule ligne
    Par juju33 dans le forum Requêtes et SQL.
    Réponses: 12
    Dernier message: 13/08/2007, 09h57

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