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 PostgreSQL Discussion :

Fusionner les résultats de plusieurs requêtes


Sujet :

Requêtes PostgreSQL

  1. #1
    Membre actif
    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2004
    Messages
    480
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : développeur
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2004
    Messages : 480
    Points : 281
    Points
    281
    Par défaut Fusionner les résultats de plusieurs requêtes
    Bonjour,

    J'ai 3 requêtes qui me renvoient :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    champ1     date
    -----------------
    10           14/04/2009
    15           17/04/2009
     
    champ2     date
    -----------------
    1           14/04/2009
    25          20/04/2009
     
    champ3     date
    -----------------
    17           15/04/2009
    5            16/04/2009
    Je voudrais au final :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    champ1     champ2     champ3     date
    -------------------------------------
    10               1              0              14/04/2009
    0                 0             17             15/04/2009
    0                 0              5              16/04/2009
    15               0              0              17/04/2009
    0                25             0              20/04/2009
    Je ne trouve pas comment faire.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Points : 2 890
    Points
    2 890
    Par défaut
    Typiquement il faut faire l'union de 3 sous-requêtes en mettant 3 colonnes dont 2 à zéro, et regrouper le tout par date.
    quelque chose du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    select sum(c1) as champ1,sum(c2) as champ2,sum(c3) as champ3,date
    from (
    select champ1 as c1,0 as c2,0 as c3,date from table
    union all
    select 0 as c1,champ2 as c2,0 as c3, date from table
    union all
    select 0 as c1,0 as c2,champ3 as c3,date from table
    ) sub
    group by date order by date

  3. #3
    Membre actif
    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2004
    Messages
    480
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : développeur
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2004
    Messages : 480
    Points : 281
    Points
    281
    Par défaut
    Avec retard, mais bon...

    C'est bon, ça renvoie les résultats comme souhaité et rapidement.


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

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/01/2012, 22h33
  2. mettre les résultat d'une requête sur plusieurs colonne
    Par irma2011 dans le forum Requêtes
    Réponses: 4
    Dernier message: 11/01/2012, 12h09
  3. Réponses: 6
    Dernier message: 18/09/2007, 18h10
  4. [SQL] Afficher les résultats d'une requête sur plusieurs pages
    Par mealtone dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/09/2006, 14h20
  5. Réponses: 5
    Dernier message: 05/10/2004, 14h05

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