Consulta de unión externa derecha del nivel de usuario

MySQLMySQLBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este proyecto, aprenderás a crear una base de datos, tablas y realizar una consulta de unión externa derecha para recuperar el nivel de todos los usuarios basado en sus puntuaciones.

👀 Vista previa

Imagen de vista previa del proyecto de base de datos

🎯 Tareas

En este proyecto, aprenderás:

  • Cómo acceder a MySQL utilizando el comando sudo sin contraseña
  • Cómo crear una base de datos y tablas
  • Cómo insertar datos en las tablas
  • Cómo realizar una consulta de unión externa derecha para recuperar el nivel de todos los usuarios

🏆 Logros

Después de completar este proyecto, podrás:

  • Comprender los conceptos básicos de la gestión de bases de datos MySQL
  • Crear y manipular tablas en una base de datos
  • Realizar consultas SQL complejas, como uniones externas derechas, para recuperar datos
  • Aplicar tus conocimientos de SQL a escenarios del mundo real, como la gestión de usuarios en una aplicación de video o audio

Acceder a MySQL y crear la base de datos

En este paso, aprenderás a acceder a MySQL utilizando el comando sudo sin ninguna contraseña y crear la base de datos vip.

  1. Iniciar el servicio de MySQL:
sudo service mysql start
  1. Acceder a MySQL:
sudo mysql
  1. Crear la base de datos vip:
CREATE SCHEMA vip CHARSET UTF8;
USE vip;

Ahora has creado con éxito la base de datos vip.

Crear las tablas e insertar datos

En este paso, crearás las tablas level y user e insertarás datos en ellas.

  1. Crear la tabla level:
CREATE TABLE level (
name VARCHAR(64) NOT NULL,
low INT NOT NULL,
high INT NOT NULL
);
  1. Insertar datos en la tabla level:
INSERT INTO level VALUES
('L1', 0, 9),
('L2', 10, 99),
('L3', 100, 499),
('L4', 500, 999);
  1. Crear la tabla user:
CREATE TABLE user (
name VARCHAR(32) NOT NULL,
score INT NOT NULL
);
  1. Insertar datos en la tabla user:
INSERT INTO user VALUES
('Jane', 5),
('John', 15),
('Mary', 155),
('David', 9999);

Ahora has creado con éxito las tablas e insertado datos en ellas.

Realizar la consulta de unión externa derecha

En este paso, realizarás una consulta de unión externa derecha para recuperar el nivel de todos los usuarios.

  1. Abre el archivo getLevel.sql y agrega la siguiente consulta:
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;

Esta consulta realiza una unión externa derecha entre las tablas level y user, y recupera el nombre del usuario y el nombre del nivel correspondiente.

  1. Guarda el archivo getLevel.sql.

Ejecutar la consulta

En este paso, ejecutarás el script getLevel.sql en MySQL.

  1. Ejecuta el script:
SOURCE /home/labex/project/getLevel.sql;

Deberías ver la siguiente salida:

MariaDB [vip]> SOURCE /home/labex/project/getLevel.sql;
+-------+-------+
| User  | Level |
+-------+-------+
| Jane  | L1    |
| John  | L2    |
| Mary  | L3    |
| David | NULL  |
+-------+-------+
4 filas en el conjunto (0.000 segundos)

La salida muestra el nombre del usuario y el nombre del nivel correspondiente para cada usuario. Si la puntuación de un usuario no se encuentra dentro de ningún rango de niveles, el nivel se muestra como NULL.

¡Felicitaciones! Has completado con éxito el proyecto al crear la base de datos, las tablas, insertar datos y realizar una consulta de unión externa derecha para recuperar el nivel de todos los usuarios.

✨ Revisar Solución y Practicar

Resumen

¡Felicitaciones! Has completado este proyecto. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.