Précédent   Forum des professionnels en informatique > Bases de données > Oracle
Oracle Forum Oracle : le serveur, les outils, ... Voir F.A.Q Oracle Tutoriels Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/05/2007, 18h29   #1
Futur Membre du Club
 
Inscription : janvier 2007
Messages : 41
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 41
Points : 17
Points : 17
Par défaut ORA-00979: N'est pas une expression GROUP BY

Bjr
quelqu'un peut m'aider sur l'erreur suivante :
Code :
1
2
3
4
5
6
7
select * 
from (select grade, count(grade) as nombre, ROWNUM as n 
        from liste_globale 
        group by grade) 
where n BETWEEN 0 AND 7;

16:25:42  from (select grade, count(grade) as nombre, ROWNUM as n 
[1]: (Error): ORA-00979: N'est pas une expression GROUP BY
NiGHtyWolf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2007, 18h46   #2
Membre émérite
 
Avatar de Yorglaa
 
Inscription : janvier 2004
Messages : 845
Détails du profil
Informations personnelles :
Âge : 41
Localisation : Suisse

Informations forums :
Inscription : janvier 2004
Messages : 845
Points : 939
Points : 939
La colonne ROWNUM devrait également être dans le group by...
__________________
Il est plus facile de voir les signes avant-coureurs après coup que l'inverse !

Yorglaa
Yorglaa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2007, 18h52   #3
Rédacteur
 
Homme Salim
Développeur et DBA Oracle
Inscription : octobre 2006
Messages : 872
Détails du profil
Informations personnelles :
Nom : Homme Salim
Localisation : Canada

Informations professionnelles :
Activité : Développeur et DBA Oracle

Informations forums :
Inscription : octobre 2006
Messages : 872
Points : 1 100
Points : 1 100
Salut ,

Les champs qui appraissent dans ton select, il doivent figurer dans le group by
Code :
1
2
3
4
select chp1,chp2,chp3,chp4,sum(chp5)
from t1
group by chp1,chp2,chp3,chp4 
dans ton cas essaie ce code
Code :
1
2
3
4
5
6
 
SELECT * 
FROM (SELECT grade, count(grade) AS nombre 
        FROM liste_globale 
        GROUP BY grade) 
WHERE rownum <= 7;
Voici un lien intéressant http://oracle.developpez.com/faq/?page=3-1#rownum
salim11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2007, 19h11   #4
Futur Membre du Club
 
Inscription : janvier 2007
Messages : 41
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 41
Points : 17
Points : 17
Merci pour la réponse rapide, ca marche ta solution salim11
NiGHtyWolf est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h10.


 
 
 
 
Partenaires

Hébergement Web