Précédent   Forum des professionnels en informatique > Bases de données > Oracle > PL/SQL
PL/SQL Forum d'entraide sur le PL/SQL
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 19/09/2011, 19h42   #1
Nouveau Membre du Club
 
Inscription : juillet 2009
Messages : 147
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 147
Points : 29
Points : 29
Par défaut Création de vue !

EMPLOYE(noEmp,nomEmp,Poste,Sup,dateEmp,Salaire,Commision,#noDept)
DEPARTEMENT(noDept,nomDept,Lieu,chef)


Je souhaiterai créer une vue departementSalaire contenant pour chaque département(nomDept) le minimum, le maximum et la moyenne des salaires. Etant débutante en PL/SQL, je rencontre quelques difficultés à l'écrire.

Code :
1
2
3
4
5
6
7
8
 
CREATE OR REPLACE VIEW DepartementSalaire(nomDept,salmin,salmax,salmoy) AS
SELECT (nomdept, salaire)
FROM Employe, Departement
WHERE salmoy=avg(salaire)
AND salmin=min(salaire)
AND salmax=max(salaire);
;
Lenou est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 19/09/2011, 20h16   #2
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 Essaie ce code

Code :
1
2
3
4
5
6
7
 
CREATE OR REPLACE VIEW departementsalaire (nomdept, salmin, salmax, salmoy)
AS
   SELECT   nomdept, MIN (salaire), MAX (salaire), AVG (salaire)
       FROM employe, departement
      WHERE employe.#nodept = departement.nodept
   GROUP BY departement.nodept;
__________________
Publications: http://schelabi.developpez.com/
salim11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2011, 20h28   #3
Nouveau Membre du Club
 
Inscription : juillet 2009
Messages : 147
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 147
Points : 29
Points : 29
VOILA LERREUR QUE CELA ME GENERE



SELECT nomdept, MIN (salaire), MAX (salaire), AVG (salaire)
*
ERREUR à la ligne 3 :
ORA-00979: n'est pas une expression GROUP BY
Pas d'erreur.

1 CREATE OR REPLACE VIEW departementsalaire (nomdept, salmin, salmax, salmoy)
2 AS
3 SELECT nomdept, MIN (salaire), MAX (salaire), AVG (salaire)
4 FROM employe, departement
5 WHERE employe.nodept = departement.nodept
6 GROUP BY departement.nodept
Lenou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2011, 20h42   #4
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,

Essaie ce code
Code :
1
2
3
4
5
6
7
 
CREATE OR REPLACE VIEW departementsalaire (nomdept, salmin, salmax, salmoy)
AS
   SELECT   nomdept, MIN (salaire), MAX (salaire), AVG (salaire)
       FROM employe, departement
      WHERE employe.#nodept = departement.nodept
   GROUP BY departement.nomdept;
__________________
Publications: http://schelabi.developpez.com/
salim11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2011, 21h02   #5
Nouveau Membre du Club
 
Inscription : juillet 2009
Messages : 147
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 147
Points : 29
Points : 29
Je vous remercie pour votre aide, cela fonctionne correctement !
Lenou 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 03h25.


 
 
 
 
Partenaires

Hébergement Web