Objetivo
Al finalizar esta lección podrás:
- Combinar condiciones con
ANDyOR. - Entender la diferencia:
ANDexige todo,ORpermite alternativas. - Usar paréntesis para controlar la lógica y la precedencia.
En esta lección aprenderás a combinar condiciones en WHERE usando
AND y OR, y a usar paréntesis para evitar errores.
Al finalizar esta lección podrás:
AND y OR.AND exige todo, OR permite alternativas.AND significa “y”. Se deben cumplir todas las condiciones.
WHERE condicion1 AND condicion2
OR significa “o”. Se cumple si se cumple al menos una condición.
WHERE condicion1 OR condicion2
Cuando mezclas AND y OR, usa paréntesis.
Así te aseguras de obtener el resultado que realmente quieres.
En general, AND tiene prioridad sobre OR en muchas bases de datos, pero no te confíes: usa paréntesis.
Productos de Papelería con stock mayor a 50.
SELECT nombre, categoria, stock
FROM productos
WHERE categoria = 'Papelería'
AND stock > 50;
Clientes de Quito o Guayaquil.
SELECT nombre, ciudad
FROM clientes
WHERE ciudad = 'Quito'
OR ciudad = 'Guayaquil';
Papelería que sea muy barata o tenga muchísimo stock.
SELECT nombre, categoria, precio, stock
FROM productos
WHERE categoria = 'Papelería'
AND (precio < 1 OR stock > 100);
Aquí los paréntesis aseguran que el OR se evalúe como un bloque dentro del AND.
Intenta resolver antes de abrir la solución.
Lista productos de categoría 'Papelería' que tengan precio < 2.
SELECT nombre, categoria, precio
FROM productos
WHERE categoria = 'Papelería'
AND precio < 2;
Explicación: deben cumplirse ambas condiciones (AND).
Lista productos que sean de categoría 'Accesorio' o 'Electrónica'.
SELECT nombre, categoria
FROM productos
WHERE categoria = 'Accesorio'
OR categoria = 'Electrónica';
Explicación: OR devuelve filas que cumplan cualquiera de las dos categorías.
Lista productos de 'Papelería' que cumplan:
(stock >= 100 o precio < 1).
SELECT nombre, categoria, precio, stock
FROM productos
WHERE categoria = 'Papelería'
AND (stock >= 100 OR precio < 1);
Explicación: los paréntesis agrupan el OR dentro del AND.
Lista clientes que sean de Quito o Cuenca.
SELECT nombre, ciudad
FROM clientes
WHERE ciudad = 'Quito'
OR ciudad = 'Cuenca';
Explicación: OR sirve para alternativas.
Lista productos con stock > 0 y que sean de categoría Papelería o Accesorio.
(Usa paréntesis.)
SELECT nombre, categoria, stock
FROM productos
WHERE stock > 0
AND (categoria = 'Papelería' OR categoria = 'Accesorio');
Explicación: primero exigimos stock > 0, luego permitimos dos categorías.
Practica con ejercicios reales y valida tu progreso con la evaluación.