Exercices MySQL Avec Correction – Partie 6

Dans cet article vous trouverez la suite du cinquième partie, consultez nos exercices sur des requêtes MYSQL simple, avancée et enfin complexe. Ces questions sont basées sur les deux tables suivants, table employee et table reward.
 
 

Table employee
+-------------+------------+-----------+----------+--------------+-------------+
| Employee_id | First_name | Last_name |  Salary  | Joining_date | Departement |
+-------------+------------+-----------+----------+--------------+-------------+
|     1       |     Bob    |   Kinto   | 1000000  |  2019-01-20  |   Finance   |
|     2       |    Jerry   |  Kansxo   | 6000000  |  2019-01-15  |     IT      |
|     3       |    Philip  |   Jose    | 8900000  |  2019-02-05  |   Banking   |
|     4       |    John    |  Abraham  | 2000000  |  2019-02-25  |  Insurance  |
|     5       |   Michael  |  Mathew   | 2200000  |  2019-02-28  |   Finance   |
|     6       |    Alex    |  chreketo | 4000000  |  2019-05-10  |     IT      |
|     7       |    Yohan   |   Soso    | 1230000  |  2019-06-20  |   Banking   |
+-------------+------------+-----------+----------+--------------+-------------+
Table reward (Prime)
+-----------------+-------------+--------+
| Employee_ref_id | date_reward | amount |
+-----------------+-------------+--------+
|         1       | 2019-05-11  |  1000  | 
|         2       | 2019-02-15  |  5000  |
|         3       | 2019-04-22  |  2000  |
|         1       | 2019-06-20  |  8000  |
+-----------------+-------------+--------+
Télécharger le fichier contenant les instructions SQL permettant la création des tables. (Cliquez ici)

 

Questions

1. Récupérer 20% du salaire de Bob, 10% du salaire de Alex et 15% du salaire des autres employés.

SELECT First_name, 
CASE First_name 
   WHEN 'Bob' THEN SALARY * .20 
   WHEN 'Alex' THEN SALARY * .10 
   ELSE SALARY * .15 
END 
AS "Salaire brut" 
FROM employee;

 
Dans cette requête nous avons utilisé l’instruction « CASE » pour obtenir les résultats souhaités.
 

Instruction CASE avec MySQL

 

2. Afficher le texte ‘IT services’ à la place de ‘IT’, ‘Financial services’ à la place de ‘Finance’ et ‘Banking services’ à la place de ‘Banking’ à partir de la colonne « Departement ».

SELECT 
CASE Departement 
   WHEN 'IT' THEN 'IT services'
   WHEN 'Finance ' THEN 'Financial services' 
   WHEN 'Banking' THEN 'Banking services' 
END AS "Département"
FROM employee;

 

 

3. Supprimer les employés qui ont reçu des récompenses(reward).

DELETE 
FROM employee 
WHERE employee_id IN (
    SELECT employee_ref_id 
    FROM Reward
);
MySQL - Vérifier si une valeur existe

 

Différence entre trigger et procédure stockée

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *