SQL Inicial · Lección 2 de 5
Filtrar con WHERE
En una planilla filtrás con clics. En SQL lo escribís en una línea, y sirve igual para doce filas que para doce millones. Hoy aprendés a quedarte solo con las filas que te importan.
El filtro que escribís vos
En la lección 1 elegiste columnas con SELECT. Ahora vas a elegir filas. Para eso está WHERE: va después del FROM y lleva una condición que cada fila tiene que cumplir. Las que no la cumplen, quedan afuera del resultado.
Por ejemplo, esta consulta:
SELECT nombre,
precio
FROM productos
WHERE precio > 3000;se lee "traé nombre y precio de los productos cuyo precio sea mayor a 3.000". Para armar condiciones tenés estos comparadores:
| Comparador | Significa | Ejemplo |
|---|---|---|
= | igual a | categoria = 'Bebidas' |
<> | distinto de | categoria <> 'Limpieza' |
> y < | mayor y menor que | stock < 10 |
>= y <= | mayor o igual, menor o igual | precio >= 2000 |
LIKE | contiene un texto | nombre LIKE '%leche%' |
¿Y si necesito dos condiciones?
Las unís con AND o con OR. Con AND la fila tiene que cumplir las dos ("de Almacén y con poco stock"). Con OR alcanza con que cumpla una ("de Bebidas o de Lácteos"). Es la misma lógica que usás cuando decís "quiero algo barato y cerca" o "me sirve el martes o el jueves".
Tres detalles que evitan la mayoría de los errores
Actividad 1
¿Pasa el filtro?
Esta es la condición:
WHERE categoria = 'Almacén' AND stock > 15
Con AND, una fila pasa solo si cumple las dos partes. ¿Qué productos pasan el filtro?
Pasa el filtro
Cumple las dos condiciones
Queda afuera
Falla al menos una
Actividad 2
Filtrá el almacén
Tres preguntas reales del almacén, todas sobre la tabla productos. Antes de escribir, ubicate: mirá qué columnas tiene y abrí la tabla completa para ver cómo están escritos los datos.
productos:idINTEGERnombreTEXTcategoriaTEXTprecioREALstockINTEGERPrimer paso: explorar toda la tabla
Antes de escribir tu consulta, conviene mirar la tabla completa. Esta consulta trae todas las columnas (eso significa el asterisco) y todas las filas:
SELECT * FROM productos;
Cargando la tabla…
Mirándola te ubicás: qué columnas hay, cómo están escritos los textos (por ejemplo, 'Lácteos' con mayúscula y tilde) y entre qué valores andan los números. Con eso armás tu consulta sin adivinar.
Hacelo siempre como primer paso cuando trabajes con una tabla nueva. Si la tabla es enorme, sumale LIMIT 20 para ver solo una muestra: lo vemos en la lección 3.
Ahora sí: escribí cada consulta en el editor y ejecutala. La lección revisa si el resultado es el correcto, la escribas como la escribas.
- 1Mostrá
nombreypreciode los productos de la categoría Lácteos. - 2Mostrá
nombreystockde los productos con menos de 10 unidades. Son los que hay que reponer. - 3Mostrá
nombreypreciode los productos de Almacén que cuestan más de $2.000.
Tu misión, la tabla completa, los mensajes y la ayuda están en el panel de la izquierda.
Tocá Ejecutar para ver el resultado.
Chequeo rápido
¿Qué filas trae esta condición?
WHERE categoria = 'Bebidas' OR precio > 5000
Pedile a la IA que traduzca tu pregunta
Si no sabés cómo escribir una condición, describile a Gemini la tabla y lo que buscás. Copiá este pedido y cambiá lo que está entre corchetes:
Tengo una tabla [productos] con las columnas [nombre, categoria, precio, stock]. Escribime una consulta SQL que traiga [los productos de Limpieza con stock menor a 20] y explicame cada parte.
Después ejecutala y mirá si el resultado tiene sentido. Si algo no cierra, preguntale por qué.
WHERE elige filas con una condición. Los textos van entre comillas simples y tienen que coincidir exacto. AND pide que se cumplan las dos condiciones; OR, que se cumpla al menos una.Ya sabés filtrar