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

PL/SQL Oracle Discussion :

PB requête : CONCAT + LISTAGG + GROUP BY


Sujet :

PL/SQL Oracle

  1. #1
    Candidat au Club
    Femme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Avril 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier

    Informations forums :
    Inscription : Avril 2018
    Messages : 1
    Points : 2
    Points
    2
    Par défaut PB requête : CONCAT + LISTAGG + GROUP BY
    Bonjour,

    Je vous contacte car je n'arrive pas à adapter ma requête à mon problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    select 
          cp.PORTEFEUILLE_NIV2,
          CONCAT(cp.PROJET_SHORT, CONCAT(' - ', cp.PROJET)) as projet,
          CONCAT(cp.LOT_SHORT, CONCAT(' - ', cp.LOT)) as lot,
          LISTAGG(cp.code_ovalis, ';') WITHIN GROUP (ORDER BY cp.code_ovalis) as beneficiaire,
          cp.PILOTE_METIER,
          cp.CLIENT_MOA_GMF
    from covea_project  cp
    where not (cp.PORTEFEUILLE_NIV2 is null)
    and cp.visible = 'Visible'
    and cp.PROJET_SHORT like '%AC_0016%'
    Group by cp.PORTEFEUILLE_NIV2, cp.PILOTE_METIER, cp.CLIENT_MOA_GMF

    Cela me renvoie :
    ORA-00979: n'est pas une expression GROUP BY

    Bien évidemement, elle fonctionne lorsque je met en commentaire les 2 CONCAT.

    Quelqu'un a t-il une idée ? Je vous remercie par avance pour votre réponse.

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 801
    Points
    30 801
    Par défaut
    Citation Envoyé par dubphonic86 Voir le message
    Bien évidemment, elle fonctionne lorsque je mets en commentaire les 2 CONCAT.
    La réponse est déjà là...

    Toutes les expressions de la clause SELECT qui ne font pas l'objet d'une fonction de regroupement doivent être reprises dans la clause GROUP BY.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

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

Discussions similaires

  1. [MySQL] Lecture d'une table avec requête ordonnée et groupée
    Par kabkab dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 24/06/2008, 14h38
  2. Requête union avec group by qui gère les 2 requêtes.
    Par juha dans le forum Langage SQL
    Réponses: 8
    Dernier message: 22/10/2007, 09h38
  3. [Requête] creer un groupe horizontal ?
    Par tatayoyo dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 29/03/2007, 22h39
  4. Réponses: 5
    Dernier message: 26/04/2006, 15h06
  5. requête order by + group by ?
    Par isa38 dans le forum Langage SQL
    Réponses: 7
    Dernier message: 12/07/2005, 14h42

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