Están en todos lados
Cada vez que usás una app, hay una base de datos trabajando detrás. Una tienda online guarda sus productos y pedidos, un banco guarda cuentas y movimientos, y un club de fútbol guarda jugadores, equipos y partidos.
Datito te lo explica en palabras simples y con ejemplos de la Copa. Son 10 pasos cortos.
Cada vez que usás una app, hay una base de datos trabajando detrás. Una tienda online guarda sus productos y pedidos, un banco guarda cuentas y movimientos, y un club de fútbol guarda jugadores, equipos y partidos.
Una base de datos se puede pensar como una hoja de Excel: datos ordenados en filas y columnas. Cada fila es un registro (acá, un jugador) y cada columna dice una característica (nombre, posición, goles).
Una tabla de jugadores
| id | nombre | posicion | goles | equipo_id |
|---|---|---|---|---|
| 1 | Facundo Arriola | Delantero | 14 | 1 |
| 2 | Diego Salazar | Mediocampista | 6 | 2 |
| 3 | Thiago Lima | Defensor | 2 | 3 |
En una base de datos, cada hoja se llama tabla y trata de un solo tema: una tabla para los jugadores, otra para los equipos, otra para los partidos…
Tabla jugadores
| id | nombre | goles |
|---|---|---|
| 1 | Facundo Arriola | 14 |
| 2 | Diego Salazar | 6 |
| 3 | Thiago Lima | 2 |
Tabla equipos
| id | nombre |
|---|---|
| 1 | Truenos de Rosario |
| 2 | Agaves de Guadalajara |
| 3 | Tubarões do Recife |
Cada columna guarda un solo tipo de dato: texto, números enteros, números con decimales o fechas. Así la base sabe qué se puede hacer con cada una: sumar números, ordenar fechas, buscar texto. Es lo que viste en el diagrama como text e int.
| Columna | Tipo | Ejemplo |
|---|---|---|
nombre | texto (text) | Facundo Arriola |
goles | número entero (int) | 14 |
fecha_inicio | fecha (en nuestras bases va como texto) | 2026-03-10 |
Varias tablas juntas forman una base de datos. La Copa SQL, por ejemplo, tiene una tabla de equipos, otra de jugadores, otra de estadísticas y otras más.
Cada fila se identifica con un número que no se repite, el id (clave primaria). Y una tabla puede guardar el id de otra: cada jugador anota el id de su equipo en equipo_id. Con ese número se encuentra el equipo en la otra tabla.
jugadores
| id | nombre | equipo_id |
|---|---|---|
| 1 | Facundo Arriola | 1 |
| 2 | Diego Salazar | 2 |
| 3 | Thiago Lima | 3 |
equipos
| id | nombre |
|---|---|
| 1 | Truenos de Rosario |
| 2 | Agaves de Guadalajara |
| 3 | Tubarões do Recife |
Facundo Arriola tiene equipo_id = 1, y el equipo con id = 1 es Truenos de Rosario.
Así se ve una base de datos real: el Gimnasio Gorilas. Cada línea une un id (PK, la clave de una tabla) con la columna que lo usa en otra tabla (FK). Un cliente se inscribe a un programa, y cada inscripción tiene sus pagos y su remera.
Esas líneas son las que usás en el ON de un JOIN en SQL, o las relaciones del modelo en Power BI.
Como este hay muchísimos ejemplos, y pueden volverse muy complejos y muy grandes: en una empresa real, una base puede tener decenas de tablas y millones de filas. Para que te hagas una idea, así de grandes son las bases de los juegos de este sitio:
| Base de datos | Tablas | Columnas | Filas |
|---|---|---|---|
| Copa SQL Americana | 5 | 40 | 521 |
| Copa SQL 2: El informe falso | 6 | 46 | 529 |
| Gimnasio Gorilas | 6 | 48 | 2.256 |
Las cantidades suman todas las tablas de cada base. El Gimnasio Gorilas incluye además una planilla vieja sin limpiar, que el diagrama no muestra.
Para pedirle datos a una base se usa SQL, un lenguaje de consultas. Se lee casi como una frase en inglés: elegí columnas, de qué tabla y con qué condición.
-- ¿Quiénes hicieron más de 10 goles? SELECT nombre, goles FROM jugadores WHERE goles > 10;
Resultado: Facundo Arriola · 14
Una tabla se puede guardar o compartir en un archivo CSV (valores separados por comas): texto simple donde cada línea es una fila. Una base completa, con todas sus tablas y sus relaciones, se guarda en un archivo .db: es el formato del motor SQLite, el que usan los juegos de este sitio. Otros motores, como PostgreSQL o MySQL, trabajan con servidores.
La tabla de equipos, en un archivo CSV
id,nombre,pais 1,Truenos de Rosario,Argentina 2,Agaves de Guadalajara,México 3,Tubarões do Recife,Brasil
CSV frente a .db
| CSV | .db (SQLite) | |
|---|---|---|
| Qué guarda | una sola tabla | todas las tablas juntas |
| Claves y relaciones | no las guarda | sí las guarda |
| Cómo se abre | con un editor de texto o con Excel | con DB Browser for SQLite, DBeaver o los juegos |
| Sirve para | pasar o compartir una tabla | guardar y consultar con SQL |
Las dos sirven, para cosas distintas. Excel es ideal para cuentas rápidas y pocos datos. Una base de datos es mejor cuando los datos son muchos, están repartidos en varias tablas o los usan muchas personas a la vez. Y casi siempre se usan juntas: los datos salen de una base y se analizan en Excel o Power BI.
| Excel | Base de datos | |
|---|---|---|
| Cantidad de datos | hasta poco más de 1 millón de filas por hoja | millones de filas y más |
| Relación entre datos | una hoja por vez, con fórmulas | tablas conectadas por claves |
| Quién la usa | una persona o un grupo chico | muchas personas y programas a la vez |
| Cómo se consulta | fórmulas y filtros | SQL |
Una guía a fondo para entender cómo funcionan las bases de datos, los distintos tipos y cómo instalar SQLite, MySQL y otros motores en tu computadora.
Ya sabés qué es una base de datos. Con SQL y con Excel podés empezar a trabajar con una, jugando.