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

Oracle Discussion :

[Oracle 9i] Avoir 2 résultats en 1 requete


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 132
    Par défaut [Oracle 9i] Avoir 2 résultats en 1 requete
    Bonjour,

    Cette petite question est purement "optionnelle" c'est à dire que j'ai déjà fais sans avoir la réponse.
    C'est simplement pour apprendre un truc si ce que je souhaite faire existe ou non.

    Mon problème (y'en a beaucoup en ce moment ...) :
    Je n'ai le droit qu'a une seule requete.
    Je cherche a avoir une somme de champs numérique des enregistrement ayant un champ égal a X et la meme somme des enregistrement ayant le champ différents de X.

    Exemple :
    MA_TABLE composée de Condition - Val1 - Val2
    Y - 1 - 2
    Y - 3 - 4
    N - 5 - 6
    N - 7 - 8

    Ma premiere somme, celle correspondant aux Y, est égale a 10.
    Ma seconde, est égale à 26.

    Pour le moment, j'ai fais deux requetes et ca marche mais pour simplifier la chose et également pour apprendre un peu plus sur le SQL, est-il possible d'avoir celà en une seule requete (sous requetes autorisée) ?

    Merci
    P.S : désolé pour tous mes posts en ce moment mais je suis plutot débutant en SQL Oracle ... je progresse mais je n'arrive pas a trouver les bons mots clés pour mes recherches

  2. #2
    Membre Expert
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Par défaut
    Salut tu peux faire un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SQL> select  f1,  sum(f2)+sum(f3) from toto group by f1;
     
    F1 SUM(F2)+SUM(F3)
    -- ---------------
    N               26
    Y               10

    C'est ca ?
    -----------------------------------------
    Steve Hostettler
    ze_key@hotmail.com / www.zekey.net

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 132
    Par défaut
    J'oubliais l'essentiel car sinon c'est pas dur.

    1 seule requete et surtout en 1 seule ligne de résultat

  4. #4
    Membre Expert
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Par défaut
    et tu veux représenter ca comment:

    simplement comme ca ?
    X Y
    -- ---
    26 10




    -----------------------------------------
    Steve Hostettler
    ze_key@hotmail.com / www.zekey.net

  5. #5
    Membre Expert
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Par défaut
    Voilà

    Code : 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
    18
    19
    20
     
     
    SQL> r
      1  select t1.f1, t1.res, t2.f1, t2.res
      2  from (
      3   select  f1,   sum(f2)+sum(f3) as res
      4      from toto
      5      where f1='N'
      6      group by f1
      7  ) t1,
      8  (
      9   select  f1,   sum(f2)+sum(f3) as res
     10      from toto
     11      where f1='Y'
     12      group by f1
     13* ) t2
     
    F1        RES F1        RES
    -- ---------- -- ----------
    N          26 Y          10

    MessagePosté le: Jeu Nov 03, 2005 18:21 Sujet du message:
    et tu veux représenter ca comment:

    simplement comme ca ?
    X Y
    -- ---
    26 10




    -----------------------------------------
    Steve Hostettler
    ze_key@hotmail.com / www.zekey.net

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 132
    Par défaut
    lol ok merci

    Je suis un boulet de pas avoir réussi a faire ca.
    Honte a moi.

    Merci beaucoup

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

Discussions similaires

  1. Récupérer le résultat d'une requete Sql posé à ORACLE
    Par delilou dans le forum Développement de jobs
    Réponses: 6
    Dernier message: 02/04/2011, 19h45
  2. Réponses: 5
    Dernier message: 08/03/2010, 14h09
  3. avoir les mêmes résultats entre 2 requetes consécutives
    Par contremaitre dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/07/2008, 17h56
  4. fusionner le résultat de deux requetes
    Par sami_c dans le forum Requêtes
    Réponses: 2
    Dernier message: 29/05/2004, 09h56
  5. résultat d'une requete affiché par mois
    Par zorely dans le forum Langage SQL
    Réponses: 7
    Dernier message: 03/05/2004, 07h18

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