Cómo hacer consultas SQL con subconsultas y tipos de JOIN – Tutorial paso a paso

Опубликовано: 16 Февраль 2026
на канале: CALERODB
118
0

En este tutorial práctico aprenderás cómo realizar consultas SQL utilizando subconsultas y diferentes tipos de JOIN para combinar datos de varias tablas fácilmente.

Te mostraré paso a paso un ejemplo claro para encontrar el parque con más visitas por ciudad, usando funciones como COUNT y RANK para obtener resultados ordenados y precisos.

Además, podrás aplicar estas técnicas a otros casos reales como:
Encontrar el empleado con más ventas por departamento
Identificar el producto más vendido por categoría
Analizar datos agrupados para tomar mejores decisiones

Incluyo el script SQL completo para que puedas practicar desde tu base de datos. No importa si eres principiante o tienes conocimientos básicos, este video te ayudará a mejorar tus consultas y manejar subconsultas y joins como un experto.

🔔 Suscríbete para más tutoriales de SQL y bases de datos.
👍 Dale like si te gustó y comenta cualquier duda o tema que quieras que explique.


#SQL #SubconsultasSQL #JoinSQL #ConsultasSQL #BasesDeDatos #TutorialSQL #DataAnalysis


SCRIPT

/*Requerimiento:
Para cada ciudad, encuentra el parque que tiene el mayor número de visitas.
Muestra la ciudad, el nombre del parque y el número de visitas.*/

-- Crear tabla de ciudades
CREATE TABLE cities (
id INT PRIMARY KEY,
name VARCHAR(255) NOT NULL
);

-- Insertar datos en la tabla de ciudades
INSERT INTO cities (id, name) VALUES
(1, 'New York'),
(2, 'Los Angeles'),
(3, 'Chicago'),
(4, 'San Francisco'),
(5, 'Houston');

-- Crear tabla de parques
CREATE TABLE parks (
id INT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
city_id INT,
FOREIGN KEY (city_id) REFERENCES cities(id)
);

-- Insertar datos en la tabla de parques
INSERT INTO parks (id, name, city_id) VALUES
(1, 'Central Park', 1),
(2, 'Prospect Park', 1),
(3, 'Griffith Park', 2),
(4, 'Lincoln Park', 3),
(5, 'Golden Gate Park', 4),
(6, 'Discovery Green', 5),
(7, 'Buffalo Bayou Park', 5),
(8, 'Millennium Park', 3),
(9, 'Echo Park', 2),
(10, 'Presidio', 4);



-- Crear tabla de visitas
CREATE TABLE visits (
id INT PRIMARY KEY,
park_id INT,
visit_date DATE,
FOREIGN KEY (park_id) REFERENCES parks(id)
);

-- Insertar datos en la tabla de visitas
INSERT INTO visits (id, park_id, visit_date) VALUES
(1, 1, '2023-01-01'),
(2, 1, '2023-01-02'),
(3, 2, '2023-01-01'),
(4, 3, '2023-01-01'),
(5, 4, '2023-01-01'),
(6, 4, '2023-01-02'),
(7, 5, '2023-01-01'),
(8, 5, '2023-01-02'),
(9, 6, '2023-01-01'),
(10, 7, '2023-01-01'),
(11, 8, '2023-01-01'),
(12, 9, '2023-01-01'),
(13, 10, '2023-01-01'),
(14, 5, '2023-01-03'),
(15, 6, '2023-01-02'),
(16, 7, '2023-01-02'),
(17, 8, '2023-01-02'),
(18, 9, '2023-01-02'),
(19, 10, '2023-01-02');