¿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.
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:
- Columnas (campos): definen QUÉ información se guarda (nombre, score, saldo). Son como los encabezados de una planilla.
- Filas (registros): cada fila es un registro completo (un cliente, una transacción, un producto).
- Clave primaria (PK): una columna que identifica de forma única cada fila (ID del cliente, número de transacción).
- Clave foránea (FK): una columna que conecta una tabla con otra (el ID del cliente en la tabla de transacciones).
¿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:
- Consultar datos: "¿cuántos clientes tienen score > 700 en Buenos Aires?"
- Filtrar y ordenar: "Dame los 10 clientes con mayor saldo, ordenados de mayor a menor"
- Agregar datos: "¿Cuál es el saldo promedio por ciudad?"
- Modificar datos: insertar, actualizar, eliminar registros
- Crear estructuras: diseñar tablas, definir tipos de datos, establecer relaciones
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 |
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.
CREATE TABLE e
INSERT. En tu trabajo, las tablas ya existen — solo hacés SELECT.
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.
Hacé clic en ▶ Ejecutar
Ejemplo 2: SELECT columnas específicas
Hacé clic en ▶ Ejecutar
Ejemplo 3: WHERE — filtrar filas
Hacé clic en ▶ Ejecutar
Ejemplo 4: Múltiples condiciones con AND/OR
Hacé clic en ▶ Ejecutar
Ejemplo 5: Contar y sumar — primer análisis
Hacé clic en ▶ Ejecutar
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 |
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.
Ejercicio 1: SELECT *
Consultá TODOS los datos de la tabla productos. Debe incluir Notebook.
Hacé clic en ▶ Ejecutar
Ejercicio 2: SELECT columnas
De la tabla clientes, traé solo nombre y saldo. Debe incluir García.
Hacé clic en ▶ Ejecutar
Ejercicio 3: WHERE con =
Traé los clientes que viven en 'Córdoba'. Debe incluir López.
Hacé clic en ▶ Ejecutar
Ejercicio 4: WHERE con > y AND
Traé clientes con score > 650 Y saldo > 100000. Debe incluir Pérez.
Hacé clic en ▶ Ejecutar
Ejercicio 5: WHERE con OR
Traé clientes de Buenos Aires O Córdoba. Debe incluir López.
Hacé clic en ▶ Ejecutar
Ejercicio 6: COUNT(*)
Contá cuántos clientes hay en total. Debe incluir 5.
Hacé clic en ▶ Ejecutar
Ejercicio 7: SELECT con alias AS
Traé nombre (como "cliente") y saldo (como "balance") de todos los clientes. Debe incluir
cliente.
Hacé clic en ▶ Ejecutar
Ejercicio 8: SUM y AVG
Calculá la suma total de saldos y el promedio. Usá alias. Debe incluir 1477000.
Hacé clic en ▶ Ejecutar
Ejercicio 9: COUNT con WHERE
Contá cuántos clientes tienen score >= 650. Debe incluir 3.
Hacé clic en ▶ Ejecutar
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.
Hacé clic en ▶ Ejecutar
Resumen y conexión
- Una base de datos relacional organiza datos en tablas (columnas + filas) conectadas por claves.
- SQL es el lenguaje universal para consultar bases de datos. Funciona en PostgreSQL, MySQL, SQLite, etc.
SELECT columnas FROM tablaes la consulta más básica.WHERE condiciónfiltra filas.AND/ORcombinan condiciones.COUNT(*),SUM(),AVG()son funciones de agregación para análisis.ASrenombra columnas en el resultado (alias).- Como Data Analyst, el 95% de tu SQL es
SELECT.
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)