Tu primera consulta SQL: aprende a hacerle preguntas a tus datos (con un ejemplo ejecutable)

Hay una habilidad que aparece en ofertas de trabajo de análisis de datos, marketing, producto, finanzas y programación por igual, y que casi todo el mundo pospone: SQL. Y casi siempre la posponen por la misma idea equivocada: "eso es para programadores".
La realidad es otra. SQL no se parece a programar: no hay bucles, no hay lógica enrevesada que seguir con el dedo. Una consulta SQL es una pregunta, escrita en un idioma estricto pero pequeño. Tan pequeño que la base —la que resuelve la mayoría de los casos reales— cabe en este artículo. Hoy vas a leer tu primera consulta, entenderla pieza por pieza y ejecutarla aquí mismo, sin instalar nada.
Los datos viven en tablas
Una base de datos, vista de cerca, intimida menos de lo que suena: son tablas. Filas y columnas, como una hoja de cálculo. Por ejemplo, tus gastos del mes:
fecha categoria monto
2026-07-02 comida 8200
2026-07-03 transporte 1500
2026-07-05 comida 4300
2026-07-08 streaming 3900
2026-07-11 comida 12500
2026-07-19 salud 22000
2026-07-24 comida 6700
Con 7 filas, cualquier pregunta la respondes a ojo: ¿cuál fue el gasto más grande? ¿cuánto se fue en comida? Pero con 70.000 filas —las ventas de una empresa, los pedidos de una tienda, los alumnos de una plataforma— el ojo no alcanza. Necesitas un idioma para preguntarle a la máquina. Ese idioma es SQL.
Una consulta es una pregunta desarmada
Esta es, más o menos, la consulta más famosa del mundo:
SELECT fecha, categoria, monto
FROM gastos
WHERE monto > 5000
ORDER BY monto DESC
Parece código. Ahora léela en voz alta, traduciendo cada línea al español:
SELECT fecha, categoria, monto→ "Muéstrame estas columnas…"FROM gastos→ "…de la tabla de gastos…"WHERE monto > 5000→ "…pero solo las filas donde el monto supere 5000…"ORDER BY monto DESC→ "…ordenadas de mayor a menor."
Es decir: "Muéstrame la fecha, la categoría y el monto de mis gastos de más de 5000, del más caro al más barato." Eso es todo. No estás dando instrucciones paso a paso como en Python: estás describiendo qué quieres ver, y la base de datos se encarga del cómo.
De las cuatro piezas, solo dos son obligatorias (SELECT y FROM). El filtro (WHERE) y el orden (ORDER BY) se agregan cuando la pregunta los necesita.
El método: primero la pregunta, después la sintaxis
El error clásico al aprender SQL es empezar por la sintaxis, memorizando palabras clave sueltas. Funciona mejor al revés:
- Escribe tu pregunta en español, tal como se la dirías a una persona.
- Subraya las partes: ¿qué columnas quiero ver? ¿de qué tabla? ¿con qué filtro? ¿en qué orden?
- Traduce cada parte a su pieza de SQL.
Míralo con dos preguntas nuevas sobre la misma tabla.
"¿Cuándo y cuánto gasté en comida?" Columnas: fecha y monto. Tabla: gastos. Filtro: que la categoría sea comida.
SELECT fecha, monto
FROM gastos
WHERE categoria = 'comida'
Fíjate en el detalle: el texto va entre comillas simples ('comida'), los números van sin comillas.
"¿Cuáles fueron mis 3 gastos más grandes?"
Columnas: todas (el atajo es *). Orden: monto de mayor a menor. Y una pieza nueva, LIMIT, que corta el resultado:
SELECT *
FROM gastos
ORDER BY monto DESC
LIMIT 3
Una sola palabra clave nueva (LIMIT) y dos detalles de sintaxis en dos preguntas. Así de chico es el idioma al principio.
Ejecuta tu primera consulta, de verdad
Basta de leer. Abajo tienes la tabla de gastos ya cargada y una consulta esperándote. El bloque usa un poco de Python como andamiaje para crear la tabla y mostrar los resultados: hoy no necesitas entender esa parte. Tu parte es lo que está entre las triples comillas: la consulta.
¿Funcionó? Entonces ya ejecutaste SQL de verdad. Ahora conviértelo en práctica: responde estas tres preguntas editando solo la consulta. Cada una se resuelve tocando una o dos piezas.
- "¿Cuándo y cuánto gasté en transporte?" — Pista: cambia las columnas y el filtro (
WHERE categoria = 'transporte'). - "¿Qué gastos fueron menores a 5000?" — Pista: el símbolo contrario a
>es<. - "¿Todos mis gastos, del más antiguo al más reciente?" — Pista: borra la línea del
WHERE(quieres todos, no solo los grandes) y ordena porfecha; el orden ascendente esASC(o simplemente quita elDESC).
Y cuando quieras el siguiente escalón, prueba esta, que responde "¿cuánto sumó cada categoría?":
SELECT categoria, SUM(monto)
FROM gastos
GROUP BY categoria
Agrupar y sumar: con eso ya estás haciendo análisis de datos, no solo consultas.
Lo que te llevas
La sintaxis de hoy —SELECT, FROM, WHERE, ORDER BY, LIMIT— es el vocabulario. Pero lo importante es el hábito: antes de escribir SQL, escribe la pregunta en español y desármala. Qué columnas, qué tabla, qué filtro, qué orden. Si la pregunta está clara, la consulta se escribe casi sola; si la consulta no te sale, casi siempre es porque la pregunta todavía está borrosa.
Y una última cosa: SQL no es solo "cosa de programadores". Es el idioma puente entre cualquier persona y sus datos, y por eso lo piden en tantos puestos que no son de programación. Empezaste con una tabla de gastos de 7 filas; el mismo idioma, exactamente el mismo, es el que consulta las bases de datos de millones de filas de cualquier empresa. La escala cambia. Las preguntas, no.
No leas sobre esto: hazlo.
Este tema es parte del curso Bases de datos y SQL desde cero en Resumate Club. El primer módulo es gratis y corre en tu navegador, sin instalar nada.
Empezar gratis →