Skip to content

🐼 Aprende SQL resolviendo el misterio del secuestro de Chipi. Proyecto educativo gratuito con retos progresivos: SELECT, JOINs, CTEs, Window Functions. Incluye guías paso a paso sin dar soluciones. Creado con 💜 por Anaïs Rodríguez Villanueva

License

Notifications You must be signed in to change notification settings

Anais-RV/sql-chipi-case

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🐼 sql-chipi-case

Un proyecto educativo para enseñar SQL resolviendo un misterio.

WANTED: Chipi - Contacto: David Vaamonde

Chipi, la mascota de SuperKode, ha sido secuestrada el 19 de octubre a las 02:13. Los alumnos del bootcamp deben usar SQL para resolver pistas y descubrir quién fue.


📜 Sobre este Proyecto

Creado por: Anaïs Rodríguez Villanueva
Propósito: Recurso educativo gratuito para aprender SQL de forma práctica y divertida
Tiempo de desarrollo: Creado en mi tiempo libre personal con dedicación y cariño 💜

⚠️ Nota importante: Este material es de uso libre para fines educativos. Si lo utilizas en tu clase, bootcamp o curso, agradecería enormemente que menciones la autoría. Es una forma de reconocer el trabajo que hay detrás y me motiva a seguir creando recursos como este.

¿Lo estás usando? ¡Me encantaría saberlo! Puedes:

  • ⭐ Darle una estrella al repo
  • 🐦 Mencionarme en redes sociales
  • 💬 Contarme cómo te fue usándolo

Licencia: MIT License - Libre para usar, modificar y compartir (con atribución)


📖 Contexto

El 19 de octubre de 2025, a las 02:13, Chipi desapareció de la oficina de SuperKode.

Los sospechosos:

  • 🛠️ Cris (formadora): "Fue el router. Siempre es el router."
  • 🔧 Andrea (formadora): "El pipeline está roto."
  • 📊 Yeraldín (formadora): "Revisar los commits."
  • 🦆 Mamá Pato (formadora): "Yo no fui. quack quack"

Los investigadores: TÚ y tus compañeros del bootcamp SuperKode.


🎯 Objetivo

Practicar SQL resolviendo un caso misterioso:

  • SELECT básico: listar datos
  • JOIN: conectar tablas relacionadas
  • WHERE: filtrar información
  • GROUP BY: analizar datos
  • CTEs y Window Functions: consultas avanzadas

📋 Requisitos

Antes de empezar, asegúrate de tener:

  • PostgreSQL 16+ instalado
  • psql disponible en tu PATH (o usa make setup PSQL="ruta\a\psql.exe")
  • Make instalado (viene con Git for Windows)
  • DBeaver o cualquier cliente SQL

🎯 ¡COMIENZA TU AVENTURA AQUÍ! →


🚀 Instalación y Setup

📖 Guía completa: docs/instalacion.md

Configurar PostgreSQL

$env:PGPASSWORD="postgres"

Inicializar base de datos

make setup

Esto creará la base de datos chipi_case con todas las tablas y datos.


🎮 Los Retos

Día 0: Calentamiento (OPCIONAL)

Si nunca has visto SQL, empieza aquí.

Abre challenges/day0_warmup.md y haz 4 retos ultra-básicos sin JOINs.


Día 1: SELECT Basics

Abre challenges/day1_select_basics.md y resuelve 5 retos + 1 bonus.

Conceptos: SELECT, FROM, WHERE, JOIN, ORDER BY, LIMIT

Valida con: make check-day1

Día 2: JOINs y Análisis

Abre challenges/day2_joins_analysis.md y resuelve 4 retos + 1 bonus.

Conceptos: GROUP BY, COUNT, STRING_AGG, UNION, HAVING

Valida con: make check-day2

Día 3: CTEs y Window Functions (OPCIONAL)

Abre challenges/day3_window_functions.md para retos avanzados.

Conceptos: WITH (CTEs), ROW_NUMBER, PARTITION BY

Valida con: make check-day3

📅 Día 4: Revelación Final (Optativo pero épico 🎉)

Abre challenges/day4_final.md para resolver el misterio completo.

Conceptos: Integración total (JOINs + CTEs + Window Functions + PL/pgSQL)

Entregables:

  • Vista solve_d4_reveal con 4 columnas: sospechoso, motivo, ubicacion_final, codigo_rescate
  • Llamada exitosa: SELECT unlock_chipi(codigo_rescate) FROM solve_d4_reveal;

Script Python (opcional):

pip install psycopg
python final/reveal.py

Valida con: make check-day4


📊 Acceder a la Base de Datos

Con DBeaver (recomendado)

  1. Abre DBeaver
  2. DatabaseNew Database Connection → PostgreSQL
  3. Completa:
    • Host: localhost
    • Port: 5432
    • Database: chipi_case
    • Username: postgres
    • Password: postgres

Con psql (línea de comandos)

$env:PGPASSWORD="postgres"
psql -h localhost -U postgres -d chipi_case

📝 ¿Cómo resolver los retos?

Para cada reto, crea una vista SQL con el nombre exacto:

CREATE OR REPLACE VIEW solve_d1_r1 AS
SELECT nombre, equipo, turno
FROM alumnos ...

Valida tu trabajo con:

make check-day1

🗄️ Tablas Principales

  • equipos - Equipos del bootcamp
  • alumnos - Alumnos (13 registros)
  • commits - Commits hechos por alumnos
  • cafe_ordenes - Órdenes de café
  • discord_logs - Mensajes en Discord
  • dispositivos - Dispositivos asignados
  • ubicaciones - Ubicaciones
  • pistas - Pistas criptográficas

Ver esquema completo: docs/04_schema-reference.md


🧭 Recursos y Ayuda

🆘 ¿Atascado en un Reto?

Documentación Completa

Comandos Rápidos

make setup         # Setup inicial
make check-day1    # Validar Day 1
make check-day2    # Validar Day 2
make check-day3    # Validar Day 3 (opcional)
make check-all     # Validar todo
make reset         # Reiniciar todo
make help          # Ver ayuda

💡 Consejos

  • 🕒 No hay prisa. Tómate el tiempo que necesites.
  • 📖 Lee la pista varias veces si el reto es difícil.
  • 📊 Consulta la estructura de las tablas antes de escribir queries.
  • 🧙 Day 3 es opcional: enfócate primero en Day 1 y Day 2.
  • 🆘 Si te atascas, usa las Guías Anti-Bloqueos - te ayudan a pensar sin darte la solución.

📜 Créditos y Licencia

Creado por: Anaïs Rodríguez Villanueva 💜

Este proyecto es gratuito y de código abierto (MIT License). Puedes usarlo, modificarlo y compartirlo libremente.

Si lo usas en tu clase o bootcamp, por favor menciona la autoría. Es la forma de reconocer el trabajo y motivar a crear más recursos educativos gratuitos.

Ver detalles completos: CREDITS.md


Mamá Pato 🦆 sigue negando. Cris sigue culpando al router. Tú tienes SQL. ¡A investigar! 🕵️

About

🐼 Aprende SQL resolviendo el misterio del secuestro de Chipi. Proyecto educativo gratuito con retos progresivos: SELECT, JOINs, CTEs, Window Functions. Incluye guías paso a paso sin dar soluciones. Creado con 💜 por Anaïs Rodríguez Villanueva

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published