Al terminar, podrás
- Filtrar filas.
- Escribir condiciones con texto y números.
- Predecir qué registros se conservan.
Recupera lo aprendido: ¿Qué diferencia hay entre elegir las columnas y elegir las filas que quieres ver?
La idea clave
WHERE evalúa una condición para cada fila. Las que producen verdadero continúan en la consulta; las demás quedan fuera del resultado.
Filtrar no significa borrar. En una consulta SELECT, WHERE solo controla qué filas ves. Más adelante comprobarás por qué la misma cláusula exige especial cuidado con UPDATE y DELETE.
- Si la condición es verdadera, la fila permanece.
- Si es falsa, la fila se descarta del resultado.
- Si el resultado es desconocido por un
NULL, la fila tampoco pasa el filtro.
El motor evalúa la condición de WHERE para cada fila de la fuente. Solo las filas cuyo resultado es verdadero continúan hacia las cláusulas siguientes.
Prueba la condición con una fila
Para stock = 0, un producto con stock 0 pasa el filtro y uno con stock 7 no. Antes de ejecutar, localiza un ejemplo de cada caso en los datos. Si aparecen ambos en tu resultado, revisa el filtro.
La sintaxis básica
SELECT columnas
FROM tabla
WHERE condición;Ejemplo paso a paso
| id | nombre | categoria | stock |
|---|---|---|---|
| 1 | Ratón | Accesorios | 18 |
| 2 | Teclado | Accesorios | 7 |
| 3 | Monitor 24 | Pantallas | 4 |
| 4 | Portátil Pro | Ordenadores | 0 |
| 5 | Auriculares | Audio | 11 |
| 7 | Monitor 27 | Pantallas | 2 |
| 8 | Disco SSD | Almacenamiento | 9 |
| 9 | Cable USB-C | Accesorios | 30 |
| 10 | Altavoz | Audio | 0 |
Recorre las existencias y decide qué filas cumplen exactamente la condición.
SELECT nombre, stock
FROM productos
WHERE stock = 0;| nombre | stock |
|---|---|
| Portátil Pro | 0 |
| Altavoz | 0 |
Cómo funciona
FROM productosparte de nueve filas.WHERE stock = 0conserva únicamente Portátil Pro y Altavoz.SELECTmuestra nombre y stock de las dos filas conservadas.
Un error habitual
Qué falla aquí
WHERE categoria = AccesoriosLos valores de texto deben escribirse entre comillas simples.
Practica con datos
Laboratorio SQL
Resuelve la consulta
Escribe una consulta que devuelva nombre y stock de los productos cuya categoría sea Accesorios.
Resultado esperado: 3 filas con nombre, stock. El orden de las filas no importa.
Ver tablas y datos
Cargando la estructura del ejercicio…
La pregunta selecciona una categoría, no un nivel de stock. Decide qué columna debes comparar.
La condición es categoria = un texto. Los textos se escriben entre comillas simples.
Selecciona nombre y stock de productos y añade WHERE categoria = 'Accesorios'.
Solución
SELECT nombre, stock FROM productos WHERE categoria = 'Accesorios';La condición se evalúa de forma independiente en cada producto.
Puedes consultar la solución y volver a intentarlo. La práctica se completa cuando tu consulta funciona.
La consulta usa datos ficticios y se ejecuta solo en este navegador.
Comprueba si puedes explicarlo
Si filtras por stock = 0, ¿desaparecen esos productos de la tabla?
Ver respuesta razonada
No: solo aparecen esos productos en el resultado. Portátil Pro y Altavoz cumplen la condición. Para comprobarlo, consulta de nuevo productos sin el filtro.
Responde antes de abrir la explicación. Si necesitaste ayuda, cierra la respuesta y vuelve a explicarlo con tus palabras antes de dar la lección por aprendida.
Qué debes recordar
- WHERE conserva filas.
- Los textos usan comillas simples.
- Una condición clara reduce el resultado antes de presentarlo.
A continuación: Continúa con Compara valores en tus filtros.
Fuentes técnicas consultadas
Las referencias confirman que WHERE elimina del resultado las filas cuya condición no es verdadera, incluidas las evaluadas como desconocidas.
- PostgreSQL: procesamiento de la cláusula WHERE
- PostgreSQL: lógica de tres valores
- SQLite: procesamiento de una sentencia SELECT