Introduction
Dans ce projet, vous allez apprendre à créer une base de données, une table et à insérer des données dans la table. Vous allez également apprendre à effectuer une requête de jointure sur soi-même sur les données pour trouver la province à laquelle appartient une ville.
👀 Aperçu

🎯 Tâches
Dans ce projet, vous allez apprendre :
- Comment démarrer le service MySQL et accéder à MySQL en utilisant la commande
sudosans mot de passe. - Comment créer une base de données, une table et insérer des données dans la table.
- Comment écrire une requête de jointure sur soi-même sur la table
divisionpour trouver la province de chaque ville. - Comment exécuter le script de requête de jointure sur soi-même dans MySQL.
🏆 Réalisations
Après avoir terminé ce projet, vous serez capable de :
- Comprendre les opérations de base de création d'une base de données, d'une table et d'insertion de données dans MySQL.
- Effectuer des requêtes de jointure sur soi-même pour récupérer des informations liées à une table.
- Appliquer vos connaissances de requêtes SQL pour résoudre des problèmes du monde réel.
Démarrer le service MySQL et accéder à MySQL
Dans cette étape, vous allez apprendre à démarrer le service MySQL et à accéder à MySQL en utilisant la commande sudo sans mot de passe.
- Démarrer le service MySQL :
sudo service mysql start
- Accéder à MySQL :
sudo mysql
Vous devriez maintenant être en mesure d'accéder à l'invite MySQL sans mot de passe.
Créer une base de données, une table et insérer des données
Dans cette étape, vous allez apprendre à créer une base de données, une table et à insérer des données dans la table.
- Créer la base de données
division:
CREATE DATABASE division;
- Utiliser la base de données
division:
USE division;
- Créer la table
division:
CREATE TABLE division (
id INT PRIMARY KEY,
name VARCHAR(22),
province_id INT
);
- Insérer des données dans la table
division:
INSERT INTO division VALUES
(1, 'Ontario', NULL),
(2, 'Toronto', 1),
(3, 'Quebec', NULL),
(4, 'Montreal', 3);
Écrire la requête de jointure sur soi
Dans cette étape, vous allez apprendre à écrire une requête de jointure sur soi-même sur la table division pour trouver la province à laquelle appartient une ville.
Créez un nouveau fichier nommé
getProvince.sqldans le répertoire/home/labex/project.Dans le fichier
getProvince.sql, ajoutez la requête suivante :
SELECT city.name AS City, province.name AS Province
FROM division AS city
JOIN division AS province ON city.province_id = province.id
WHERE city.province_id IS NOT NULL;
Cette requête effectue une jointure sur soi-même sur la table division, où la table city est jointe à la table province sur la colonne province_id. La clause WHERE garantit que seules les villes avec un province_id non nul sont incluses dans le résultat.
Le tableau résultant aura les colonnes étiquetées City et Province.
Exécuter la requête de jointure sur soi
Dans cette étape, vous allez apprendre à exécuter le script de requête de jointure sur soi-même dans MySQL.
- Revenez à l'invite MySQL :
sudo mysql
- Exécutez le script
getProvince.sql:
SOURCE /home/labex/project/getProvince.sql;
Vous devriez voir la sortie suivante :
MariaDB [division]> SOURCE /home/labex/project/getProvince.sql;
+----------+----------+
| City | Province |
+----------+----------+
| Toronto | Ontario |
| Montreal | Quebec |
+----------+----------+
2 rows in set (0.000 sec)
Cette sortie montre les villes et leurs provinces correspondantes, telles que récupérées par la requête de jointure sur soi-même.
Félicitations! Vous avez réussi à terminer le projet en créant une base de données, une table, en insérant des données et en exécutant une requête de jointure sur soi-même pour trouver la province de chaque ville.
Résumé
Félicitations! Vous avez terminé ce projet. Vous pouvez pratiquer plus de laboratoires dans LabEx pour améliorer vos compétences.



