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 :

[Debutant] "Regroupement" d'enreg


Sujet :

Oracle

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut [Debutant] "Regroupement" d'enreg
    Bonjour,j'ai une petite question:
    j'ai une table A, avec des champs A1, A2, A3, A4 et A5.
    Ma PK est A1 + A2 + A3 + A4.
    A5 est un type NUMBER.
    Je voudrais regrouper dans une table B, pour regroupement A1, A2 , A3, la somme des A5.
    Ex: A1 A2 A3 A4 A5
    B G R V 5
    B G R C 7
    Je voudrais inserer dans dans B cet enrg (B, G, R, 12)

    Est ce que ceci marcherait:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    insert into B (B1, B2, B3, B5) 
    values (select distinct T1.A1, T1.A2, T1.A3, sum(T1.A5)
                from A T1,
                        A T2
                where T1.A1 = T2.A1 
                    and T1.A2 = T2.A2
                    and T1.A3 = T2.A3)
    Je ne suis pas du tout sur de cette requête. Le pb c'est que je ne pourrais pas la tester avant quelques jours, mais j'ai besoin de la réponse assez rapidement...
    Merci

  2. #2
    Membre éprouvé Avatar de star
    Homme Profil pro
    .
    Inscrit en
    Février 2004
    Messages
    837
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Corée Du Nord

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Février 2004
    Messages : 837
    Points : 975
    Points
    975
    Par défaut
    Il manque peut être un :
    dans la where clause.
    Quelle est la clé de jointure entre T1 et T2 ?
    .
    Diviser c'est régner : United we stand, Divided we fall
    .

  3. #3
    Inactif   Avatar de Médiat
    Inscrit en
    Décembre 2003
    Messages
    1 946
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 946
    Points : 2 227
    Points
    2 227
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    insert into B (B1, B2, B3, B5) 
    values (select A1, A2, A3, sum(A5) 
            from A
            group by A1, A2, A3)
    J'affirme péremptoirement que toute affirmation péremptoire est fausse
    5ième élément : barde-prince des figures de style, duc de la synecdoque
    Je ne réponds jamais aux questions techniques par MP

  4. #4
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par star
    Il manque peut être un :
    dans la where clause.
    Quelle est la clé de jointure entre T1 et T2 ?
    .
    Ben non justement...Je n'en veux plus du A4!
    Je veux regrouper les enreg en ne tenant plus compte de A4!

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par Médiat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    insert into B (B1, B2, B3, B5) 
    values (select A1, A2, A3, sum(A5) 
            from A
            group by A1, A2, A3)
    C'est donc aussi simple que cela?!? :o

  6. #6
    Membre éprouvé Avatar de star
    Homme Profil pro
    .
    Inscrit en
    Février 2004
    Messages
    837
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Corée Du Nord

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Février 2004
    Messages : 837
    Points : 975
    Points
    975
    Par défaut
    Je suggèrerais plutôt:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    create table B as (select ... from A group by ...);
    .
    Diviser c'est régner : United we stand, Divided we fall
    .

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