QuieroProgramar por Rodri Gonzalez
SQL · Lección 01 de 15

¿Qué es SQL?

SQL es el lenguaje universal para consultar bases de datos. Todo analista de datos lo necesita: para extraer información de los sistemas de un banco, una fintech o cualquier empresa que guarde datos. En esta lección entendés qué es, por qué importa y escribís tu primera consulta.

60–80 min Prerrequisitos: Track Python completado
01

Concepto teórico

¿Qué es una base de datos?

Una base de datos es un sistema organizado para almacenar, gestionar y consultar grandes volúmenes de información. A diferencia de un archivo CSV o una planilla de Excel (que se carga entera en memoria), una base de datos puede tener millones de registros y responder consultas sobre ellos en milisegundos sin cargar todo.

Las bases de datos relacionales (RDBMS — Relational Database Management System) organizan la información en tablas. Cada tabla tiene:

Analogía: una base de datos relacional es como un conjunto de planillas de Excel interconectadas. Tenés una planilla de clientes, otra de cuentas, otra de transacciones. Lo que las conecta es un campo en común (ID del cliente). Pero a diferencia de Excel, una DB puede manejar millones de filas sin romperse y consultarlas al instante.

¿Qué es SQL?

SQL (Structured Query Language — Lenguaje de Consulta Estructurado) es el lenguaje estándar para comunicarse con bases de datos relacionales. Con SQL podés:

SQL es UNIVERSAL. Funciona igual (con variaciones menores) en PostgreSQL, MySQL, SQLite, SQL Server, Oracle, BigQuery, Redshift, Databricks. Aprender SQL una vez te sirve para CUALQUIER base de datos relacional. Es como aprender a manejar: después podés manejar cualquier auto.

Tipos de sentencias SQL

Categoría Sentencias Para qué
DQL (Query) SELECT Consultar datos (el 90% de tu trabajo)
DML (Manipulation) INSERT, UPDATE, DELETE Modificar datos
DDL (Definition) CREATE, ALTER, DROP Crear/modificar estructura
DCL (Control) GRANT, REVOKE Permisos de acceso

Como Data Analyst, el 95% de tu trabajo con SQL es SELECT: consultar y analizar datos que ya existen. Por eso dedicamos la mayoría del track a dominar SELECT con todas sus variantes.

RDBMS populares

Motor Uso típico Dónde lo vas a encontrar
PostgreSQL Empresas, startups, open source Fintechs, empresas de tecnología
MySQL Web, aplicaciones WordPress, e-commerce
SQLite Local, embebido, pruebas Apps mobile, este curso
SQL Server Corporativo Microsoft Bancos, seguros, gobierno
Oracle Enterprise grande Bancos grandes, telecom
BigQuery Data warehouse en la nube Google Cloud, analytics
En Argentina: los bancos grandes (Galicia, Macro, BBVA) suelen usar SQL Server u Oracle. Las fintechs (Ualá, Mercado Pago, Naranja X) suelen usar PostgreSQL o BigQuery. Las consultoras de datos usan de todo. En todos los casos, SQL es el mismo lenguaje base.

Tu primera consulta: SELECT

La sentencia más básica de SQL es:

SELECT columna1, columna2
FROM tabla;

Esto dice: "traeme estas columnas de esta tabla". Así de simple. El punto y coma (;) marca el final de la sentencia. SQL no distingue mayúsculas de minúsculas en las palabras clave (SELECT = select), pero por convención se escriben en MAYÚSCULAS para distinguirlas de los nombres de tablas y columnas.

En este editor: cada vez que ejecutás una consulta, se crea una base de datos fresca con tablas de ejemplo. Los datos se definen al inicio del código SQL con CREATE TABLE e INSERT. En tu trabajo, las tablas ya existen — solo hacés SELECT.
02

Ejemplos explicados paso a paso

Ejemplo 1: SELECT básico — tu primera consulta

Creamos una tabla de clientes y consultamos sus datos. En cada editor SQL, primero se crea la tabla con datos y después se consulta.

ejemplo_01.sqlSQL

        
Hacé clic en ▶ Ejecutar

Ejemplo 2: SELECT columnas específicas

ejemplo_02.sqlSQL

        
Hacé clic en ▶ Ejecutar

Ejemplo 3: WHERE — filtrar filas

ejemplo_03.sqlSQL

        
Hacé clic en ▶ Ejecutar

Ejemplo 4: Múltiples condiciones con AND/OR

ejemplo_04.sqlSQL

        
Hacé clic en ▶ Ejecutar

Ejemplo 5: Contar y sumar — primer análisis

ejemplo_05.sqlSQL

        
Hacé clic en ▶ Ejecutar
03

Referencia rápida

Sentencia Qué hace Ejemplo
SELECT * Todas las columnas SELECT * FROM clientes
SELECT col1, col2 Columnas específicas SELECT nombre, saldo FROM clientes
WHERE Filtrar filas WHERE score > 700
AND / OR Combinar condiciones WHERE score > 700 AND activo = 1
AS Alias (renombrar) SELECT nombre AS cliente
COUNT(*) Contar filas SELECT COUNT(*) FROM clientes
SUM(col) Sumar valores SELECT SUM(saldo) FROM clientes
04

Ejercicios

Nota: en cada ejercicio, las líneas de CREATE TABLE e INSERT ya crean los datos. Vos solo tenés que escribir el SELECT al final.

Nivel 1 · Básico

Ejercicio 1: SELECT *

Consultá TODOS los datos de la tabla productos. Debe incluir Notebook.

ejercicio_01.sqlDebe incluir "Notebook"

          
Hacé clic en ▶ Ejecutar
Nivel 1 · Básico

Ejercicio 2: SELECT columnas

De la tabla clientes, traé solo nombre y saldo. Debe incluir García.

ejercicio_02.sqlDebe incluir "García"

          
Hacé clic en ▶ Ejecutar
Nivel 1 · Básico

Ejercicio 3: WHERE con =

Traé los clientes que viven en 'Córdoba'. Debe incluir López.

ejercicio_03.sqlDebe incluir "López"

          
Hacé clic en ▶ Ejecutar
Nivel 2 · Intermedio

Ejercicio 4: WHERE con > y AND

Traé clientes con score > 650 Y saldo > 100000. Debe incluir Pérez.

ejercicio_04.sqlDebe incluir "Pérez"

          
Hacé clic en ▶ Ejecutar
Nivel 2 · Intermedio

Ejercicio 5: WHERE con OR

Traé clientes de Buenos Aires O Córdoba. Debe incluir López.

ejercicio_05.sqlDebe incluir "López"

          
Hacé clic en ▶ Ejecutar
Nivel 2 · Intermedio

Ejercicio 6: COUNT(*)

Contá cuántos clientes hay en total. Debe incluir 5.

ejercicio_06.sqlDebe incluir "5"

          
Hacé clic en ▶ Ejecutar
Nivel 3 · Avanzado

Ejercicio 7: SELECT con alias AS

Traé nombre (como "cliente") y saldo (como "balance") de todos los clientes. Debe incluir cliente.

ejercicio_07.sqlDebe incluir "cliente"

          
Hacé clic en ▶ Ejecutar
Nivel 3 · Avanzado

Ejercicio 8: SUM y AVG

Calculá la suma total de saldos y el promedio. Usá alias. Debe incluir 1477000.

ejercicio_08.sqlDebe incluir "1477000"

          
Hacé clic en ▶ Ejecutar
Nivel 3 · Avanzado

Ejercicio 9: COUNT con WHERE

Contá cuántos clientes tienen score >= 650. Debe incluir 3.

ejercicio_09.sqlDebe incluir "3"

          
Hacé clic en ▶ Ejecutar
Nivel 4 · Desafío

Ejercicio 10: Consulta combinada

De los clientes de Buenos Aires, traé nombre, score y saldo, y además mostrá la suma total de sus saldos. Son 2 consultas separadas. Debe incluir 1040000.

ejercicio_10.sqlDebe incluir "1040000"

          
Hacé clic en ▶ Ejecutar
05

Resumen y conexión

En la siguiente lección (02 · SELECT, FROM y WHERE) vas a profundizar en filtrado: BETWEEN, IN, LIKE, IS NULL y todas las formas de escribir condiciones WHERE.

Recursos: W3Schools SQL · SQLBolt (interactivo)