Fundamentos
7 min de lectura·

Cómo aprender SQL desde cero: la hoja de ruta

SQL es una de las habilidades más agradecidas del mundo IT: el lenguaje lleva décadas sin cambiar, se aprende en semanas y hace falta en todas partes, desde la analítica hasta el backend. Este artículo es un plan paso a paso: qué aprender, en qué orden, cuánto tiempo lleva y en qué suelen tropezar los principiantes.

Mi progreso en la hoja de ruta0 de 6 semanas completadas

Marca las semanas completadas aquí mismo: el progreso se guarda en tu navegador y el artículo se convierte en tu propio diario de estudio.

Cuánto tiempo lleva

Plazos realistas dedicando entre 30 y 60 minutos al día:

  • 2 semanas: un SELECT con soltura, es decir, consultas con condiciones, ordenación y agregación. Ya es suficiente para sacar datos para informes.
  • 4–6 semanas: el nivel básico, con combinación de tablas, subconsultas y modificación de datos. Es el mínimo que se pregunta en las entrevistas para becarios y juniors.
  • 2–3 meses: el nivel de un junior con soltura, con funciones de ventana, transacciones y nociones de cómo funcionan los índices.

No hace falta saber programar: SQL es un lenguaje declarativo, describes qué quieres obtener y no cómo conseguirlo. Tampoco necesitarás más matemáticas que las del instituto.

La regla principal para todo el camino: 20 % del tiempo leyendo, 80 % escribiendo consultas tú mismo. SQL no se aprende solo mirando.

Semana 1. Entender con qué trabajamos y escribir el primer SELECT

El objetivo de la semana es entender cómo están hechas las bases de datos y ejecutar las primeras consultas.

Y aquí tienes tu primera consulta. Es interactiva, así que pulsa «Ejecutar»:

MySQL 8.4
SELECT name, category, price
FROM products
ORDER BY price DESC
LIMIT 3;

Acabas de pedirle a la base de datos los tres productos más caros, y te ha respondido. Cambia 3 por 5 o DESC por ASC y mira cómo cambia el resultado.

Para esto no hace falta instalar ningún SGBD en tu ordenador: en el curso interactivo las consultas se ejecutan directamente en el navegador, y se cambia entre MySQL y PostgreSQL con un solo botón.

Semana 2. Filtros y ordenación

El objetivo es aprender a sacar de una tabla exactamente las filas que necesitas.

A partir de esta semana conviene empezar a resolver ejercicios en la Práctica SQL: 2 o 3 al día, empezando por los fáciles. Los ejercicios te dan lo que la lectura no te da: la capacidad de traducir una pregunta en lenguaje normal a una consulta SQL.

Semana 3. Agregación: de filas a cifras

El objetivo es responder a preguntas del tipo «cuántos», «de media» o «máximo por grupo».

Aquí también toca entender la diferencia entre WHERE y HAVING: es la pregunta número uno de las entrevistas sobre este tema.

Semana 4. Combinar tablas, el corazón de SQL

En las bases de datos reales, los datos siempre están repartidos en varias tablas, y casi cualquier consulta del día a día combina dos o tres. Es la semana más importante del curso.

Sin prisa: asegúrate de que la diferencia entre INNER JOIN y LEFT JOIN te resulte obvia de forma intuitiva. Todo lo que viene después se apoya en esto.

Semana 5. Subconsultas, CTE y lógica condicional

El objetivo es construir consultas de varios pasos.

Semana 6. Modificar datos y crear tablas

Hasta ahora solo has leído datos; ahora toca aprender a modificarlos.

Con esto el nivel básico queda cerrado: sabes sacar, contar, combinar y modificar datos.

Esta es una consulta que, a estas alturas, no solo podrás leer, sino también escribir tú mismo, con combinación de tablas, agrupación y ordenación todo en uno:

MySQL 8.4
SELECT u.country, COUNT(*) AS orders_count, ROUND(AVG(o.total_amount), 2) AS avg_check
FROM orders o
JOIN users u ON u.user_id = o.user_id
GROUP BY u.country
ORDER BY orders_count DESC;
countryorders_countavg_check
Germany15715.71
Russia14015.66
USA8614.86
UK7316.13

Si entiendes cada línea, ya tienes el SQL básico en el bolsillo.

Después: lo que separa a un junior de un becario

Cuando ya domines la base, añade los temas que más salen en las entrevistas de nivel junior y superior:

Cinco errores que frenan a los principiantes

  • Leer sin practicar. La sintaxis que solo has leído se olvida en tres días; la consulta que has escrito tú se queda. Un tema sin 5–10 ejercicios resueltos es un tema sin terminar.
  • Empezar instalando un SGBD. Puedes pasarte una tarde instalando y configurando MySQL y quemarte antes de la primera consulta. Empieza en la Práctica SQL, directamente en el navegador; ya instalarás una base de datos local cuando de verdad la necesites.
  • Memorizar listas de funciones. No necesitas cientos de funciones: el 90 % del trabajo lo hacen COUNT, SUM, AVG, COALESCE y un par de funciones de texto. El resto se busca en un minuto en la Referencia de funciones SQL.
  • Lanzarte a las funciones de ventana antes de JOIN. Los temas de moda no se asimilan sin una base. El orden de las semanas de arriba no es casual.
  • Aprender «en general», sin un objetivo. Define para qué quieres SQL: superar una entrevista, automatizar informes, pasarte a la analítica. El objetivo marca en qué poner el foco y cuándo parar.

Por dónde empezar ahora mismo

El plan es sencillo: abre la primera lección del curso (es gratuita, como todo el curso básico) y completa la semana 1. Cuando la termines, vuelve aquí y marca la primera casilla. Tras seis semanas de práctica constante tendrás una habilidad que aparece como requisito en una de cada dos ofertas de empleo de analista, tester y desarrollador backend.

Y cuando hayas completado la base, podrás profundizar en los cursos avanzados: diseño de bases de datos, optimización de consultas y análisis de datos con SQL.

Artículos relacionados