Bonjour à tous, c'est mon premier message mais surement pas mon dernier.
Je vous explique mon problème.
J'ai 4 tables:
<<Table>>Bibliothèques
{Clé primaire : NoBiblio}
NoBiblio : INTEGER
NomBiblio : VARCHAR(30)
-----------------------
<<Table>>Exemplaires
{Clé primaire : NoExempl}
NoExempl : INTEGER
NoBiblio : INTEGER
NoLivre : INTEGER
------------------------
<<Table>>Livres
{Clé primaire : NoLivre}
NoLivre : INTEGER
Titre : VARCHAR(100)
NoAuteur : INTEGER
------------------------
<<Table>>Auteurs
{Clé primaire : NoAuteur}
NoAuteur : INTEGER
NomAuteur : VARCHAR(30)
PrenomAuteur : VARCHAR(30)
-------------------------
-La table Exemplaires est liée à la table Bibliotheques par NoBiblio
-La table Exemplaires est liée à la table Livres par NoLivre
-La table Livres est liée à la table Auteurs par NoAuteur
Je dois donc pour chaque livre, donner le nombre d'exemplaires détenu par chaque bibliotheque et afficherer :
--le numero du livre,
--son titre,
--le nom de son auteur,
--le nom de la bibliotheque,
--le nombre d'exemplaires,
--le tout trié par numéro de livre et nom de bibliothèque
Présentement voici ma requête:
SELECT e.NoLivre, Titre, NomAuteur, nomBiblio, COUNT(*) AS NOMBRE
FROM Livres l, Exemplaires e, Bibliotheques b, Auteurs a
WHERE e.NoBiblio = b.NoBiblio
AND l.NoLivre = l.NoLivre
AND l.NoAuteur = a.NoAuteur
GROUP BY e.NoLivre, nomBiblio
/
(J'utilise ORACLE)
Le truc c'est qu'elle me retourne : ORA-00979: N'est pas une expression GROUP BY
Je ne comprends pas pourquoi... Si je comprends bien, le COUNT(*) compte tous les enregistrements retourné selon le GROUP BY(ici 2 colonnes).. alors logiquement pour chacun des enregistrement contenant les mêmes valeurs pour ces 2 colonnes cela devrais me retourner le nombre d'occurence..je ne vois pas le problème.
Si quelqu'un pouvais m'aider ce serait bien parce que c'est pour un TP et je retrouve le même problème dans plusieurs numéros.
Merci d'avance.