Saltearse al contenido

Autoevaluación

Introducción a las Bases de Datos

¿Qué es una subconsulta?

¿Cuál es la función de la cláusula WHERE en una subconsulta?

Subconsultas y Palabras Clave

¿Qué operador se utiliza con la palabra clave ANY?

¿Qué devuelve la siguiente consulta?

1
SELECT city.Name
2
FROM city
3
WHERE Population > ANY (
4
SELECT Population
5
FROM country
6
WHERE GNP > 250000
7
);

Subconsultas Correlacionadas

¿Qué caracteriza a una subconsulta correlacionada?

¿Cuál es el propósito de una tabla derivada?

Ejercicios Prácticos

Ejercicio 1: Ciudades con población mayor que el promedio

Base de datos: World

Descripción: Obtener una lista de ciudades cuya población es mayor que el promedio de la población de todas las ciudades.

Ver solución
1
SELECT c.Name
2
FROM city AS c
3
WHERE c.Population > (
4
SELECT AVG(Population) FROM city
5
);

Ejercicio 2: Comparación de poblaciones

Base de datos: World

Descripción: Obtener una lista de los países del continente de Asia cuya población es mayor que la población promedio de todos los países.

Ver solución
1
SELECT c.Name
2
FROM country AS c
3
WHERE c.Continent = 'Asia' AND c.Population > (
4
SELECT AVG(c2.Population)
5
FROM country AS c2
6
);

Ejercicio 3: Películas con más copias en inventario

Base de datos: Sakila

Descripción: Obtener una lista de películas que tienen más de 7 copias en inventario.

Ver solución
1
SELECT title
2
FROM film
3
WHERE film_id IN (
4
SELECT inventory.film_id
5
FROM inventory
6
GROUP BY inventory.film_id
7
HAVING COUNT(inventory_id) > 7
8
);

Ejercicio 4: Productos con más de 10 unidades en stock

Base de datos: BikeStores

Descripción: Listar todos los productos y la cantidad de tiendas donde están disponibles con más de 10 unidades en stock.

Ver solución
1
SELECT p.product_name, (
2
SELECT COUNT(*)
3
FROM Production.stocks
4
WHERE product_id = p.product_id AND quantity > 10
5
) AS stores_count
6
FROM Production.products p;