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

SQL Oracle Discussion :

Requête plusieurs valeurs pour une colonne identique


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9
    Par défaut Requête plusieurs valeurs pour une colonne identique
    Bonjour,

    Voici mon petit souci, j'ai une table avec les schéma suivant :

    IDMagasin
    IDDepartement
    Mois
    Annee
    CA

    Et je voudrais faire une requete, pour avoir les champs suivant :

    Et je voudrais en une requete, avoir en ligne, l'identifiant du magasin, le département, et ensuite plusieurs CA concernant plusieurs mois différents, en gros, une requete avec des lignes résultats de la forme :

    ID_MAGASIN, ID_DEPARTEMENT, CA MOIS 1, CA MOIS 2, CA MOIS 3

    J'ai tout essayé, les jointures avec table identique, etc, mais rien ne me renvois le résultat attendu correct.

    Avez vous une idée ?

    Merci d'avance

  2. #2
    Expert confirmé
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 485
    Par défaut
    Bonjour,
    Certains diraient que c'est de la cosmétique, et donc du rôle de l'application, mais néanmoins c''est faisable en SQL:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    select idmag,sum(cam1),sum(cam2),sum(cam3)
    from
    (
    select idmag,sum(ca) as cam1,0 as cam2,0 as cam3
    from latabble where mois = 'JANVIER'
    group by idmag
    union
    select idmag,0 as cam1,sum(ca) as cam2,0 as cam3
    from latabble where mois = 'FEVRIER'
    group by idmag
    union
    select idmag,0 as cam1,0 as cam2,sum(ca) as cam3
    from latabble where mois = 'MARS'
    group by idmag
    )
    group by idmag

    Tatayo.

  3. #3
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9
    Par défaut
    Merci Tatayo, toutefois, je me suis sans doute mal exprimé, car les CA ne sont pas à calculer, il faut juste restituer les valeurs présentes dans la table...

    De cette façon, je n'ai pas trouvé de solution, et celle que tu proposes ne semble pas fonctionner non plus..

    Ou alors je n'arrive pas à l'adapter.

    Vraiment désolé, ce problème doit être simple, et me fait perdre un temps fou...

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

    Informations forums :
    Inscription : Août 2008
    Messages : 2 955
    Par défaut
    J'ai rajouté l'année dans la sélection mais si c'est inutile à retirer du SELECT et du GROUP BY
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    select ID_MAGASIN, ID_DEPARTEMENT, Annee,
           max(case when mois = 1 then CA end) as MOIS_1, 
           max(case when mois = 2 then CA end) as MOIS_2, 
           max(case when mois = 3 then CA end) as MOIS_3
      from latabble
     group by ID_MAGASIN, ID_DEPARTEMENT, Annee

  5. #5
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9
    Par défaut
    Merci skuatamad.

    Toutefois dans mon cas, ça ne marche pas.

    J'ai l'impression d'être dans un cas sans solution.


  6. #6
    Membre Expert Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Par défaut
    Bonjour,
    Quand tu dis que ça ne marche pas ça veut dire quoi exactement ? Que tu as une erreur ou que le résultat renvoyé n'est pas correct ?
    Si c'est une erreur donne nous le code et titre de l'erreur.

Discussions similaires

  1. plusieurs valeurs pour une même énumération
    Par adaneels dans le forum C#
    Réponses: 6
    Dernier message: 10/04/2009, 18h41
  2. [MySQL] Plusieurs valeurs pour une variable à injecter
    Par pony99 dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 03/12/2008, 13h04
  3. Plusieurs valeurs pour une meme colonne
    Par Aragorn) dans le forum SQL
    Réponses: 4
    Dernier message: 03/01/2008, 15h46
  4. Plusieurs valeurs pour une même colonne
    Par maxlegrand dans le forum Langage SQL
    Réponses: 7
    Dernier message: 16/10/2007, 14h32
  5. [Tableaux] Plusieurs valeurs pour une seule CheckBox
    Par Phenol dans le forum Langage
    Réponses: 2
    Dernier message: 01/03/2007, 18h54

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