Administración de bases de datos y auto-unión en SQL

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 cómo crear una base de datos, una tabla y cómo insertar datos en la tabla. También aprenderás cómo realizar una consulta de auto-unión en los datos para encontrar la provincia a la que pertenece una ciudad.

👀 Vista previa

Vista previa del proyecto de base de datos

🎯 Tareas

En este proyecto, aprenderás:

  • Cómo iniciar el servicio MySQL y acceder a MySQL utilizando el comando sudo sin ninguna contraseña.
  • Cómo crear una base de datos, una tabla y cómo insertar datos en la tabla.
  • Cómo escribir una consulta de auto-unión en la tabla division para encontrar la provincia de cada ciudad.
  • Cómo ejecutar el script de consulta de auto-unión en MySQL.

🏆 Logros

Después de completar este proyecto, serás capaz de:

  • Comprender las operaciones básicas de creación de una base de datos, una tabla y de inserción de datos en MySQL.
  • Realizar consultas de auto-unión para recuperar información relacionada de una tabla.
  • Aplicar tus conocimientos de consultas SQL para resolver problemas del mundo real.

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL mysql(("MySQL")) -.-> mysql/SystemManagementToolsGroup(["System Management Tools"]) mysql(("MySQL")) -.-> mysql/BasicKeywordsandStatementsGroup(["Basic Keywords and Statements"]) mysql(("MySQL")) -.-> mysql/DatabaseFunctionsandDataTypesGroup(["Database Functions and Data Types"]) mysql/BasicKeywordsandStatementsGroup -.-> mysql/use_database("Database Selection") mysql/BasicKeywordsandStatementsGroup -.-> mysql/create_database("Database Creation") mysql/BasicKeywordsandStatementsGroup -.-> mysql/create_table("Table Creation") mysql/BasicKeywordsandStatementsGroup -.-> mysql/select("Data Retrieval") mysql/BasicKeywordsandStatementsGroup -.-> mysql/insert("Data Insertion") mysql/BasicKeywordsandStatementsGroup -.-> mysql/source("External Code Execution") mysql/DatabaseFunctionsandDataTypesGroup -.-> mysql/database("DB Function - Info Retrieval") mysql/SystemManagementToolsGroup -.-> mysql/mysqladmin("Admin Utility") subgraph Lab Skills mysql/use_database -.-> lab-301300{{"Administración de bases de datos y auto-unión en SQL"}} mysql/create_database -.-> lab-301300{{"Administración de bases de datos y auto-unión en SQL"}} mysql/create_table -.-> lab-301300{{"Administración de bases de datos y auto-unión en SQL"}} mysql/select -.-> lab-301300{{"Administración de bases de datos y auto-unión en SQL"}} mysql/insert -.-> lab-301300{{"Administración de bases de datos y auto-unión en SQL"}} mysql/source -.-> lab-301300{{"Administración de bases de datos y auto-unión en SQL"}} mysql/database -.-> lab-301300{{"Administración de bases de datos y auto-unión en SQL"}} mysql/mysqladmin -.-> lab-301300{{"Administración de bases de datos y auto-unión en SQL"}} end

Iniciar el servicio MySQL y acceder a MySQL

En este paso, aprenderás cómo iniciar el servicio MySQL y acceder a MySQL utilizando el comando sudo sin ninguna contraseña.

  1. Iniciar el servicio MySQL:
sudo service mysql start
  1. Acceder a MySQL:
sudo mysql

Ahora deberías poder acceder al prompt de MySQL sin ninguna contraseña.

Crear base de datos, tabla e insertar datos

En este paso, aprenderás cómo crear una base de datos, una tabla y cómo insertar datos en la tabla.

  1. Crear la base de datos division:
CREATE DATABASE division;
  1. Utilizar la base de datos division:
USE division;
  1. Crear la tabla division:
CREATE TABLE division (
  id INT PRIMARY KEY,
  name VARCHAR(22),
  province_id INT
);
  1. Insertar datos en la tabla division:
INSERT INTO division VALUES
(1, 'Ontario', NULL),
(2, 'Toronto', 1),
(3, 'Quebec', NULL),
(4, 'Montreal', 3);

Escribir la consulta de auto-unión

En este paso, aprenderás cómo escribir una consulta de auto-unión en la tabla division para encontrar la provincia a la que pertenece una ciudad.

  1. Crea un nuevo archivo llamado getProvince.sql en el directorio /home/labex/project.

  2. En el archivo getProvince.sql, agrega la siguiente consulta:

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;

Esta consulta realiza una auto-unión en la tabla division, donde la tabla city se une con la tabla province en base a la columna province_id. La cláusula WHERE asegura de que solo las ciudades con un province_id no nulo estén incluidas en el resultado.

La tabla resultante tendrá las columnas etiquetadas como City y Province.

Ejecutar la consulta de auto-unión

En este paso, aprenderás cómo ejecutar el script de consulta de auto-unión en MySQL.

  1. Vuelve al prompt de MySQL:
sudo mysql
  1. Ejecuta el script getProvince.sql:
SOURCE /home/labex/project/getProvince.sql;

Deberías ver la siguiente salida:

MariaDB [division]> SOURCE /home/labex/project/getProvince.sql;
+----------+----------+
| City     | Province |
+----------+----------+
| Toronto  | Ontario  |
| Montreal | Quebec   |
+----------+----------+
2 rows in set (0.000 sec)

Esta salida muestra las ciudades y sus respectivas provincias, como se recuperan mediante la consulta de auto-unión.

¡Felicitaciones! Has completado con éxito el proyecto al crear una base de datos, una tabla, insertar datos y ejecutar una consulta de auto-unión para encontrar la provincia de cada ciudad.

✨ Revisar Solución y Practicar

Resumen

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