Employés et salaires

[20 minutes]

Soit le schéma relationnel :

Employe (#Num, Nom, Prenom, Age, Salaire, Fonction=>Fonction, Societe=>Societe)
Fonction (#Intitule, SalaireMin, SalaireMax, NbHeures)
Societe (#Nom, Pays, Activite)

Écrivez une requête SQL permettant de sélectionner les noms de tous les directeurs de France.

SELECT Employe.Nom
FROM Employe JOIN Societe
ON  Employe.Societe=Societe.Nom
WHERE Employe.Fonction='Directeur' AND Societe.Pays='France'

Écrivez une requête SQL permettant d'afficher le salaire de tous les employés en francs (sachant que le salaire dans la table est en euros et que un euro vaut 6.55957 franc).

SELECT Num, Nom, Salaire*6.55957 As SalaireEnFrancs
FROM Employe

Écrivez une requête SQL permettant de vérifier que les salaires de chaque employé correspondent bien à ce qui est autorisé par leur fonction.

SELECT Employe.Salaire, Fonction.SalaireMin, Fonction.SalaireMax, (Employe.Salaire >= Fonction.SalaireMin AND Employe.Salaire <= SalaireMax) AS Correspond
FROM Employe JOIN Fonction
ON Employe.Fonction=Fonction.Intitule

Écrivez une requête SQL permettant le passage aux 35 heures :

  • en modifiant le nombre d'heures travaillées pour chaque fonction (ramené à 35 s'il est supérieur à 35),

  • et en réajustant les échelles de salaire au pro-rata du nombre d'heures travaillées avant le passage aux 35 heures.

UPDATE Fonction
SET NbHeures=35, SalaireMin=SalaireMin*35/NbHeures, SalaireMax=SalaireMax*35/NbHeures
WHERE NbHeures>35
AccueilExercices > Exercice : Employés et salaires< PrécédentSuivant >