SELECT y WHERE: leer datos sin romper nada
SELECT y WHERE: leer datos sin romper nada
La consulta SELECT es la herramienta que más vas a usar en tu vida con bases de datos. Sirve para leer datos sin modificarlos: por eso es segura para explorar. La clave mental es pensar en una tabla como un conjunto de filas, y en cada consulta como una pregunta que filtra y proyecta hasta quedarte solo con lo que te interesa.
Las tres piezas que necesitas hoy
- SELECT: elige qué columnas quieres ver (la "proyección").
- FROM: indica de qué tabla salen los datos.
- WHERE: filtra qué filas entran al resultado.
Evita SELECT * en producción: trae todas las columnas, gasta ancho de banda y rompe tu código si alguien agrega o renombra una columna. Pide solo lo que necesitas.
Una consulta real, paso a paso
SELECT id, email, created_at
FROM users
WHERE created_at >= '2026-01-01'
AND country = 'AR'
LIMIT 20;Aquí pedimos tres columnas de la tabla users, nos quedamos solo con quienes se registraron desde el 1 de enero de 2026 y son de Argentina, y usamos LIMIT 20 para no traernos un millón de filas mientras exploramos.
Atención
Los textos van entre comillas simples: 'AR'. Las comillas dobles en PostgreSQL son para nombres de columnas, no para valores. Confundirlas es uno de los errores más comunes al empezar.
Operadores que usarás todos los días
| Operador | Significado | Ejemplo |
|---|---|---|
= | igual | status = 'paid' |
<> | distinto | plan <> 'free' |
IN | uno de varios | country IN ('AR','MX') |
BETWEEN | rango | total BETWEEN 10 AND 50 |
LIKE | patrón texto | email LIKE '%@gmail.com' |
¿Qué hace WHERE country IN ('AR','MX')?
IN incluye las filas cuyo valor coincide con cualquiera de la lista; equivale a country = 'AR' OR country = 'MX'.Ejercicio práctico
Objetivo: escribir tu primera consulta filtrada y leer el resultado con criterio.
- Elige una tabla con la que trabajes (por ejemplo
usersuorders). - Escribe un
SELECTque pida 3 columnas concretas (nada de*). - Agrega un
WHEREcon al menos dos condiciones unidas porAND(por ejemplo una fecha y un estado). - Cierra con
LIMIT 20y ejecútala.
Entregable: la consulta final y una frase explicando qué pregunta de negocio responde.
Para recordar
SELECTelige columnas,WHEREfiltra filas.- Pide columnas explícitas; evita
SELECT *. - Los valores de texto van en comillas simples.
- Usa
LIMITpara explorar sin traer todo.