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 :

Résultat dans une colonne sql


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Août 2017
    Messages : 6
    Par défaut Résultat dans une colonne sql
    Bonjour,

    J'ai un petit code php qui me permet d'exporter mes commandes en cours.

    La colonne total fait la somme des produits commandés, et dans Firstname on affiche les noms des personnes qui on commandé.

    Mais j'aimerais avoir après quantité total des colonnes avec le nom du client et dessus ça quantité individuel.

    NOM DU PRODUIT ---- Marque ---- Quantité total --- John ---- Arnaud 
    
    test                             test                2                    1              1 
    Quelqu'un pour m'éclairer ?

    Merci
    Nom : Capture d’e?cran 2017-11-10 a? 13.34.46.png
Affichages : 149
Taille : 45,2 Ko

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Bien sûr :

  3. #3
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Août 2017
    Messages : 6
    Par défaut
    Ma requête sql est :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    SELECT od.product_id, od.product_name, m.name, oh.id_order_state, GROUP_CONCAT(c.firstname,",") as firstname, SUM(od.product_quantity) as totalquantity
    					FROM zeoi_order_detail od
    					LEFT JOIN  zeoi_orders o ON (od.id_order = o.id_order)
    					LEFT JOIN  zeoi_product p ON (od.product_id = p.id_product)
    					LEFT JOIN  zeoi_manufacturer m ON (p.id_manufacturer = m.id_manufacturer)
    					LEFT JOIN  zeoi_customer c ON (c.id_customer = o.id_customer)
                        LEFT JOIN  zeoi_order_history oh ON (oh.id_order = od.id_order)
    WHERE oh.id_order_state = 10
                        GROUP BY od.product_id, od.product_attribute_id
    					ORDER BY od.product_id

    et me retourne
    Nom : Capture d’e?cran 2017-11-10 a? 14.48.25.png
Affichages : 143
Taille : 118,3 Ko
    Mais j'aimerais avoir un truc du style
    Nom : Capture d’e?cran 2017-11-10 a? 14.56.26.png
Affichages : 171
Taille : 140,5 Ko

  4. #4
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Août 2017
    Messages : 6
    Par défaut
    J'ai une pseudo solution avec la ci dessous, mais se sera plus lisible si il y avait une colonne par clients.

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    SELECT od.product_id, od.product_name, m.name, oh.id_order_state, GROUP_CONCAT( CONCAT (c.firstname,od.product_quantity)) as firstname, SUM(od.product_quantity) as totalquantity
    					FROM zeoi_order_detail od
    					LEFT JOIN  zeoi_orders o ON (od.id_order = o.id_order)
    					LEFT JOIN  zeoi_product p ON (od.product_id = p.id_product)
    					LEFT JOIN  zeoi_manufacturer m ON (p.id_manufacturer = m.id_manufacturer)
    					LEFT JOIN  zeoi_customer c ON (c.id_customer = o.id_customer)
                        LEFT JOIN  zeoi_order_history oh ON (oh.id_order = od.id_order)
    WHERE oh.id_order_state = 10
                        GROUP BY od.product_id, od.product_attribute_id
    					ORDER BY od.product_id

    Nom : Capture d’e?cran 2017-11-10 a? 15.18.41.png
Affichages : 146
Taille : 89,3 Ko

  5. #5
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    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 814
    Billets dans le blog
    14
    Par défaut
    Toutes les colonnes du SELECT ne faisant pas l'objet d'une fonction de groupage doivent figurer dans le GROUP BY sous peine de voir des valeurs aléatoires pour les colonnes manquantes.

    Donc :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    GROUP BY od.product_id, od.product_name, m.name, oh.id_order_state
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    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 !

  6. #6
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Août 2017
    Messages : 6
    Par défaut
    Merci
    Sinon j'ai réussi à faire ce que je voulais avec PIVOT

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 19/08/2012, 14h31
  2. limitation de résultat dans une requete SQL
    Par vrachid dans le forum Bases de données
    Réponses: 4
    Dernier message: 20/01/2010, 16h02
  3. récupérer le résultat d'une requête sql dans un edit
    Par bertrand_declerck dans le forum Bases de données
    Réponses: 3
    Dernier message: 28/07/2005, 14h07
  4. résultat d'une requete SQL dans un tableau en JSP
    Par Paradoxys dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 06/04/2005, 16h17
  5. Résultats dans une même colonne.
    Par souellet dans le forum Langage SQL
    Réponses: 6
    Dernier message: 10/03/2004, 19h51

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