Création d'une base de données SQL et requête de jointure non équi

MySQLMySQLBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce projet, vous allez apprendre à créer une base de données, des tables et à insérer des données. Vous exécuterez ensuite une requête de jointure non équijoin pour récupérer le niveau de tous les utilisateurs en fonction des informations stockées dans la base de données.

👀 Aperçu

Aperçu du projet de base de données

🎯 Tâches

Dans ce projet, vous allez apprendre :

  • Comment accéder à MySQL en utilisant la commande sudo sans mot de passe
  • Comment créer la base de données vip
  • Comment créer les tables level et user et y insérer des données
  • Comment écrire une requête SQL pour récupérer le niveau de tous les utilisateurs

🏆 Réalisations

Après avoir terminé ce projet, vous serez capable de :

  • Comprendre le processus de création d'une base de données et de tables
  • Gagner de l'expérience dans l'insertion de données dans des tables
  • Apprendre à exécuter une requête de jointure non équijoin pour récupérer des données à partir de plusieurs tables
  • Appliquer vos connaissances SQL pour résoudre un problème du monde réel

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.

  1. Démarrer le service MySQL :
sudo service mysql start
  1. Accéder à MySQL en utilisant la commande sudo :
sudo mysql
  1. Créer la base de données vip avec le jeu de caractères fourni :
CREATE SCHEMA vip CHARSET UTF8;
  1. Utiliser la base de données vip :
USE vip;

Créer les tables et insérer des données

Dans cette étape, vous allez apprendre à créer les tables level et user, et à y insérer des données.

  1. Créer la table level :
CREATE TABLE level (
name VARCHAR(64) NOT NULL,
low INT NOT NULL,
high INT NOT NULL
);
  1. 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);
  1. Créer la table user :
CREATE TABLE user (
name VARCHAR(32) NOT NULL,
score INT NOT NULL
);
  1. Insérer des données dans la table user :
INSERT INTO user VALUES
('Jane', 5),
('John', 15),
('Mary', 155);

Récupérer les niveaux d'utilisateurs

Dans cette étape, vous allez apprendre à récupérer le niveau de tous les utilisateurs en fonction des informations stockées dans la base de données vip.

  1. Ajoutez le code suivant au fichier getLevel.sql :

    SELECT u.name AS `User`, l.name AS `Level`
    FROM `user` u, `level` l
    WHERE u.score BETWEEN l.low AND l.high;
  2. Enregistrez et fermez le fichier.

  3. Exécutez le script getLevel.sql dans MySQL :

    SOURCE /home/labex/project/getLevel.sql;

La sortie devrait être :

MariaDB [vip]> SOURCE /home/labex/project/getLevel.sql;
+------+-------+
| User | Level |
+------+-------+
| Jane | L1    |
| John | L2    |
| Mary | L3    |
+------+-------+
3 rows in set (0.000 sec)

Félicitations! Vous avez terminé le projet.

✨ Vérifier la solution et pratiquer

Sommaire

Félicitations! Vous avez terminé ce projet. Vous pouvez pratiquer plus de laboratoires sur LabEx pour améliorer vos compétences.