Saltar al contenido
Bases de datos con SQL
Todos los cursos

Ejercicio: Consultar con SELECT

  • ⏱ 30 minutos
  • 📶 Nivel: principiante

Objetivo

Practicar SELECT, WHERE, LIKE, ORDER BY y LIMIT escribiendo ocho consultas sobre la tabla productos.

Cómo se trabaja

Escribe cada consulta en papel o en un editor y, si puedes, pruébala en sqlite3 con tienda.db (lección 1). Después compara con la solución desplegable. Recuerda: texto entre comillas simples y cada instrucción acaba en ;.

La tabla es productos(id, nombre, categoria, precio, stock) con las 8 filas del curso.

Pasos

Marca cada paso a medida que lo completes. Tu avance se guarda en este navegador.

💡 Pista 1: qué cláusulas usar

Casi todas se resuelven con SELECT … FROM … WHERE … ORDER BY … LIMIT, en ese orden y usando solo las que necesites.

💡 Pista 2: el inventario

Puedes calcular en el propio SELECT y ordenar por el alias: ORDER BY valor DESC.

✅ Ver una solución posible

Intenta resolverlo antes de mirar. Tu versión puede ser distinta y también correcta.

Paso 1
SELECT nombre, stock
FROM productos;
Paso 2
SELECT *
FROM productos
WHERE categoria = 'Periféricos';
Paso 3
SELECT nombre, precio
FROM productos
WHERE precio < 100 AND stock > 0;

Resultado esperado

nombreprecio
Ratón45.50
Altavoz99.00
Cable HDMI15.00
Paso 4
SELECT *
FROM productos
WHERE categoria IN ('Audio', 'Pantallas');
Paso 5
SELECT nombre
FROM productos
WHERE nombre LIKE '%Monitor%';
Paso 6
SELECT nombre, precio
FROM productos
ORDER BY precio DESC
LIMIT 3;

Resultado esperado

nombreprecio
Monitor 4K899.00
Monitor FHD650.00
Webcam150.00
Paso 7
SELECT DISTINCT categoria
FROM productos
ORDER BY categoria;

Resultado esperado

categoria
Accesorios
Audio
Pantallas
Periféricos
Paso 8
SELECT nombre, precio * stock AS valor
FROM productos
ORDER BY valor DESC;

📌 Nota · Más de una solución

Tu consulta puede ser distinta y correcta, siempre que devuelva las mismas filas. Por ejemplo, el paso 5 también funciona con LIKE 'Monitor%' con estos datos.

💡 🏁 Reto extra (opcional)

Escribe una consulta que muestre los productos con stock entre 10 y 50 (ambos incluidos), ordenados por categoría y, dentro de cada categoría, del más barato al más caro.