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 :

ORA-00979: not a group by expression


Sujet :

SQL Oracle

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2015
    Messages : 7
    Points : 5
    Points
    5
    Par défaut ORA-00979: not a group by expression
    Bonjour à tous,

    une requête est exécutée sous oracle 11.2.0.1.0 mais génère une erreur ORA-00979:not a group by expression sous oracle 18c.


    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    with c2
    as
    (SELECT  f2.module_id,I2.rec_unit_id, I2.origin, f2.object_type
                                          from g_cashitem I2 INNER JOIN f_followup f2 on I2.item_id=f2.object_id
                                                              INNER JOIN g_rec_unit r2 ON (I2.rec_unit_id = r2.rec_unit_id)
    )                                                          
    SELECT XMLAGG (XMLELEMENT ("Items1",
                               xmlattributes ( rec_unit_id, COUNT ( *) AS total),
                               (SELECT XMLAGG (XMLELEMENT ("Items2",
                                                           xmlattributes ( c2.rec_unit_id,c2.object_type, COUNT ( *) AS total),
                                                           (SELECT XMLAGG ( XMLELEMENT ( "Items3", xmlattributes ( rec_unit_id,object_type,origin, COUNT ( *) AS total)
                                                                        ))
                                                              FROM ( SELECT  f1.module_id,I3.rec_unit_id, I3.origin, f1.object_type
                                                                from g_cashitem I3 INNER JOIN f_followup f1 on I3.item_id=f1.object_id
                                                              INNER JOIN g_rec_unit r ON (I3.rec_unit_id = r.rec_unit_id)
                                                              )c3
                                                            WHERE  c3.rec_unit_id = c1.rec_unit_id
                                                            AND c3.object_type=c2.object_type
                                                            GROUP BY rec_unit_id,object_type,origin)
                                                          )
                                              )
                                  FROM c2                        
                               GROUP BY rec_unit_id,object_type
                               )
                              )
                  )
      FROM g_cashitem c1
     WHERE page_id = 11927
    GROUP BY rec_unit_id;

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 137
    Points : 1 917
    Points
    1 917
    Par défaut
    Bonjour,

    Ca me rappelle un problème que j'ai rencontré il y a peu de temps. Une requête XML avec GROUP BY qui fonctionnait parfaitement mais pas pour une BDD en particulier. J'obtenais la même erreur. Pas réussi à comprendre le problème, et je n'ai pas trop creusé. Ma solution de contournement a été d'intercepter l'erreur et de sortir de la procédure, le résultat était quand même retourné.

  3. #3
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    Si ça fonctionnait en 11 et plus en 18c, mieux vaut ouvrir un SR chez Oracle
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

Discussions similaires

  1. ORA-00979: not a GROUP BY expression
    Par Oratorio dans le forum Oracle
    Réponses: 6
    Dernier message: 16/11/2012, 09h21
  2. ORA-00979:not a GROUP BY expression
    Par kodo dans le forum SQL
    Réponses: 2
    Dernier message: 16/12/2010, 18h11
  3. ORA-00979: N'est pas une expression GROUP BY
    Par NiGHtyWolf dans le forum Oracle
    Réponses: 3
    Dernier message: 10/05/2007, 19h11
  4. ORA-00979: not a GROUP BY expression
    Par Wurlitzer dans le forum Oracle
    Réponses: 13
    Dernier message: 01/02/2007, 12h19
  5. Erreur ORA-00979 : not a GROUP BY expression sur Oracle9i
    Par Dirty Henry dans le forum Oracle
    Réponses: 9
    Dernier message: 21/10/2005, 14h23

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