1. Afficher les employés dans la ville de ‘casa’ et ‘oujda’
SELECT * FROM employés WHERE ville IN (“casa” , “oujda”)
2. Afficher les noms et id des employés recrutés entre 2003 et 2012
SELECT id, nom FROM employés WHERE année_aff BETWEEN 2003 AND 2012;
3. Afficher les missions effectuées en les groupant par ville de départ
SELECT missions.id_mission , missions.depart , missions.destination, missions.date_depart , missions.id_employe
FROM employés INNER JOIN missions ON employés.id = missions.id_employe
GROUP BY missions.depart , missions.id_mission , missions.destination, missions.date_depart, missions.id_employe
;
4. Afficher les missions effectuées en les groupant par ville et les classant par date (du plus récent au plus ancien)
SELECT missions.id_mission , missions.depart , missions.destination, missions.date_depart , missions.id_employe
FROM employés INNER JOIN missions ON employés.id = missions.id_employe
GROUP BY missions.depart , missions.id_mission , missions.destination, missions.date_depart, missions.id_employe
ORDER BY missions.date_depart DESC;
5. Afficher toute les villes des employés
SELECT ville FROM employés ;
6. Afficher toute les villes des employés sans répétition
SELECT DISTINCT ville
FROM employés ;
Ou
SELECT ville
FROM employés GROUP BY ville;
7. Afficher toute les villes dans lesquelles au moins 18 employés y travaillent. Il faut les grouper avant d’appliquer la condition.
SELECT ville , count(id)
FROM employés Group by ville HAVING count (id)>=18 ;
8. Modifier la ville de l’employé ayant l’id 361 par la ville de ‘meknes’
UPDATE employés SET ville =”mekenes” WHERE id=361 ;
9. Supprimer les employés de la ville de ’meknes’
DELETE * FROM employés WHERE ville =”mekenes”
10. Afficher et Classer les noms des employés par ordre alphabétique
SELECT nom FROM employés ORDER by nom ASC;
11. Quelle est la moyenne des salaires ?
SELECT AVG(salaire) AS Moyenne FROM employés ;
12. Quelle est le salaire maximal ?
SELECT MAX(salaire) AS Max FROM employés ;
13. Quelle est le salaire minimal ?
SELECT MIN(salaire) AS Min FROM employés ;
14. Quelle est la masse salariale (somme des salaire) dans la ville de ‘rabat’ ?
SELECT SUM(salaire) AS Masse FROM employés WHERE ville=“rabat”;
15. Quelle est le nombre des techniciens ?
SELECT count(*) AS Nombre_tech FROM employés WHERE grade=”technicien”;
16. Quelle est le nombre des techniciens à casa ?
SELECT count(*) AS Nombre_tech FROM employés WHERE grade=”technicien” and ville=“rabat”;
17. Quelle sont les employés (actuels) qui ont effectué des missions ?
SELECT employés.nom ;
FROM employés INNER JOIN missions ON employés.id = missions.id_employe ;
18. Afficher tous les employés avec ou sans missions
SELECT employés.nom FROM employés ;
19. Afficher les employés qui n’ont pas effectué des missions
SELECT * FROM employés LEFT JOIN missions ON employés.id = missions.id_employe WHERE missions.id_employe IS NULL;