Introduction
Dans ce projet, vous allez apprendre à créer une base de données, des tables et à effectuer une requête de jointure externe droite pour récupérer le niveau de tous les utilisateurs en fonction de leurs scores.
👀 Aperçu

🎯 Tâches
Dans ce projet, vous allez apprendre :
- Comment accéder à MySQL en utilisant la commande
sudosans mot de passe - Comment créer une base de données et des tables
- Comment insérer des données dans les tables
- Comment effectuer une requête de jointure externe droite pour récupérer le niveau de tous les utilisateurs
🏆 Réalisations
Après avoir terminé ce projet, vous serez capable de :
- Comprendre les bases de la gestion de la base de données MySQL
- Créer et manipuler des tables dans une base de données
- Effectuer des requêtes SQL complexes, telles que les jointures externes droites, pour récupérer des données
- Appliquer vos connaissances SQL à des scénarios du monde réel, tels que la gestion des utilisateurs dans une application vidéo ou audio
Accéder à MySQL et créer la base de données
Dans cette étape, vous allez apprendre à accéder à MySQL en utilisant la commande sudo sans mot de passe, et à créer la base de données vip.
- Démarrer le service MySQL :
sudo service mysql start
- Accéder à MySQL :
sudo mysql
- Créer la base de données
vip:
CREATE SCHEMA vip CHARSET UTF8;
USE vip;
Maintenant, vous avez créé avec succès la base de données vip.
Créer les tables et insérer des données
Dans cette étape, vous allez créer les tables level et user, et y insérer des données.
- Créer la table
level:
CREATE TABLE level (
name VARCHAR(64) NOT NULL,
low INT NOT NULL,
high INT NOT NULL
);
- Insérer des données dans la table
level:
INSERT INTO level VALUES
('L1', 0, 9),
('L2', 10, 99),
('L3', 100, 499),
('L4', 500, 999);
- Créer la table
user:
CREATE TABLE user (
name VARCHAR(32) NOT NULL,
score INT NOT NULL
);
- Insérer des données dans la table
user:
INSERT INTO user VALUES
('Jane', 5),
('John', 15),
('Mary', 155),
('David', 9999);
Maintenant, vous avez créé avec succès les tables et inséré des données dans celles-ci.
Effectuer la requête de jointure externe droite
Dans cette étape, vous allez effectuer une requête de jointure externe droite pour récupérer le niveau de tous les utilisateurs.
- Ouvrez le fichier
getLevel.sqlet ajoutez la requête suivante :
SELECT u.name AS `User`, l.name AS `Level`
FROM `level` l
RIGHT JOIN `user` u ON u.score BETWEEN l.low AND l.high;
Cette requête effectue une jointure externe droite entre les tables level et user, et récupère le nom de l'utilisateur et le nom du niveau correspondant.
- Enregistrez le fichier
getLevel.sql.
Exécuter la requête
Dans cette étape, vous allez exécuter le script getLevel.sql dans MySQL.
- Exécutez le script :
SOURCE /home/labex/project/getLevel.sql;
Vous devriez voir la sortie suivante :
MariaDB [vip]> SOURCE /home/labex/project/getLevel.sql;
+-------+-------+
| User | Level |
+-------+-------+
| Jane | L1 |
| John | L2 |
| Mary | L3 |
| David | NULL |
+-------+-------+
4 rows in set (0.000 sec)
La sortie montre le nom de l'utilisateur et le nom du niveau correspondant pour chaque utilisateur. Si le score d'un utilisateur ne tombe dans aucune des plages de niveau, le niveau est affiché comme NULL.
Félicitations! Vous avez réussi à terminer le projet en créant la base de données, les tables, en insérant des données et en effectuant une requête de jointure externe droite pour récupérer le niveau de tous les utilisateurs.
Résumé
Félicitations! Vous avez terminé ce projet. Vous pouvez pratiquer plus de laboratoires dans LabEx pour améliorer vos compétences.



