Solución del caso del incendio escolar de Ghost in the SQL Data: recorrido SQL paso a paso

Resuelve el caso del incendio escolar de Ghost in the SQL Data con esta guía SQL paso a paso: encuentra al llamante que se adelantó 14 minutos usando filtros de tiempo, joins y datos de testigos.

El caso del incendio escolar es el misterio principal de Ghost in the SQL Data, y es el que engancha a la mayoría de los jugadores: una llamada reportó un incendio escolar 14 minutos antes de que el primer testigo viera las llamas. Si estás atascado, esta solución del caso del incendio escolar de Ghost in the SQL Data divide la investigación en pasos SQL claros y repetibles. Encontrar a ese llamante temprano importa porque es el momento en que el juego te enseña que las marcas de tiempo y los joins —no el instinto— resuelven un caso. A continuación tienes un recorrido completo de la solución del caso del incendio escolar de Ghost in the SQL Data, construido en torno a la lógica de consulta que el juego realmente te pide usar.

Cómo funciona el caso del incendio escolar

Ghost in the SQL Data plantea cada caso como una investigación de datos. En este escenario, exploras un año de registros de llamadas de emergencia de París, y el puzle gira en torno a una única anomalía: alguien reportó un incendio escolar mucho antes de que ningún testigo lo confirmara. Esa brecha de aproximadamente 14 minutos es tu ancla.

Los reportes de la comunidad y la descripción oficial de la tienda apuntan a la misma idea central: la llamada temprana es la pista, y SQL es la herramienta que usas para aislarla. El juego no te da la respuesta; te da una base de datos y una pregunta.

Esto es lo que convierte este caso en un gran momento de aprendizaje:

  • El filtrado por tiempo te enseña a acotar resultados con cláusulas WHERE sobre marcas de tiempo.
  • Los joins conectan registros de llamadas con declaraciones de testigos o datos de ubicación.
  • La ordenación (ORDER BY) saca a la superficie la llamada más temprana en la escena.
  • La agregación te ayuda a comparar el volumen de llamadas alrededor de la ventana del incidente.

Una nota importante de la experiencia de los jugadores: el motor SQL del juego es intencionalmente básico. Miembros de la comunidad han señalado que funciones como DATEPART, DATEDIFF y EXTRACT no están disponibles, así que te apoyarás en trucos más simples de cadenas y comparaciones. Tenlo en cuenta mientras construyes tus consultas.

Qué estás buscando realmente

Tu objetivo es un registro de llamada que cumpla tres condiciones:

CondiciónQué significa en términos SQL
Misma ubicación que el incendioFiltrar por la dirección o el ID de ubicación de la escuela
Marca de tiempo anterior a los testigosWHERE timestamp < hora del primer testigo
Denunciante plausibleJoin con las tablas de llamantes o incidentes

Una vez que aísles los registros que cumplan las tres, el más temprano es tu llamada sospechosa. Ese es el esqueleto de cualquier solución del caso del incendio escolar de Ghost in the SQL Data.

Construir la consulta de la solución del caso del incendio escolar

Vamos a recorrer la lógica paso a paso. Los nombres exactos de tablas y columnas varían según la versión, así que trata las consultas de abajo como plantillas: sustituye los nombres de campo reales que te muestre tu inspector de base de datos.

Paso 1: Encontrar el registro del incidente del incendio

Empieza localizando el incendio escolar en la tabla de incidentes o de llamadas. Buscas una fila que mencione una escuela y un incendio.

SELECT *
FROM calls
WHERE description LIKE '%school%'
  AND description LIKE '%fire%';

El operador LIKE con comodines es tu amigo aquí, sobre todo porque las funciones de fecha avanzadas pueden no estar disponibles. Los jugadores de la comunidad han señalado que SUBSTRING funciona cuando otras funciones de cadena no lo hacen, así que tenlo en tu caja de herramientas.

Paso 2: Obtener la línea temporal de los testigos

A continuación, encuentra cuándo vio realmente el primer testigo el incendio. Esa marca de tiempo es tu límite.

SELECT witness_time, location
FROM witnesses
WHERE location = 'School Address'
ORDER BY witness_time ASC;

La ordenación ascendente te da la observación del testigo más temprana en la parte superior. Anota esa marca de tiempo: es el punto de referencia para todo el caso.

Paso 3: Encontrar llamadas anteriores al testigo

Ahora llega la recompensa. Consulta la tabla de llamadas para registros en la ubicación de la escuela que ocurrieron antes de la marca de tiempo del primer testigo.

SELECT call_id, caller_name, call_time, description
FROM calls
WHERE location = 'School Address'
  AND call_time < 'Witness Timestamp'
ORDER BY call_time ASC;

El primer resultado es tu llamante que se adelantó 14 minutos. Este es el corazón de la solución del caso del incendio escolar de Ghost in the SQL Data: la consulta que convierte una corazonada en evidencia.

Paso 4: Identificar al llamante

Con el ID de llamada en mano, haz un join con la tabla de llamantes o de personas para obtener un nombre y cualquier detalle vinculado.

SELECT c.call_id, p.name, p.role, c.call_time
FROM calls c
JOIN people p ON c.caller_id = p.person_id
WHERE c.call_id = 'Your Call ID';

Un consejo rápido de la experiencia de los jugadores: el juego aplica JOIN antes de WHERE de forma implícita, lo que desconcierta a algunos novatos. Si tus resultados parecen raros, revisa cómo interactúan tus condiciones de join con tus filtros.

Errores comunes en el caso del incendio escolar

Incluso una solución sólida del caso del incendio escolar de Ghost in the SQL Data puede torcerse si te topas con estos obstáculos. Estos son los errores en los que más caen los jugadores de la comunidad.

ErrorPor qué ocurreSolución
Usar funciones de fecha no compatiblesDATEDIFF/EXTRACT no disponiblesCompara marcas de tiempo directamente o usa SUBSTRING
Olvidar el contexto de la zona horariaHora local de París frente a hora almacenadaConfirma cómo se almacenan las horas
Filtrar solo por descripciónSe pierden llamadas basadas en ubicaciónAñade un filtro de ubicación
Ignorar el orden del joinJOIN implícito antes de WHEREReordena la lógica o prueba de forma incremental
Asumir que la primera fila es la respuestaResultados sin ordenarUsa siempre ORDER BY call_time ASC

Vale la pena repetir el problema del orden del join. Un reseñador señaló específicamente "el orden implícito de JOIN antes de WHERE" como un obstáculo. Si una consulta no devuelve nada cuando esperas filas, a menudo ese es el culpable.

Una lista de comprobación para depurar

Cuando tu consulta devuelva cero filas o demasiadas, repasa esto:

  • ¿Coincide exactamente la cadena de ubicación (ortografía, acentos)?
  • ¿Tu comparación de marcas de tiempo usa el formato correcto?
  • ¿Estás filtrando en la tabla correcta?
  • ¿Ordenaste antes de leer el primer resultado?

Leer los resultados como un detective

El SQL te lleva a la respuesta, pero el caso también te pide interpretarla. Una vez que hayas encontrado al llamante temprano, el juego quiere que expliques la anomalía: ¿por qué llamó esta persona antes de que nadie más viera el incendio?

Aquí es donde Ghost in the SQL Data combina habilidades de datos con una ligera deducción. Busca detalles de apoyo en tus resultados con join:

  • Rol del llamante: ¿un miembro del personal, un transeúnte o alguien vinculado a la escuela?
  • Momento de la llamada: ¿está aislada o forma parte de un grupo de llamadas?
  • Redacción de la descripción: ¿el reporte suena de primera mano o de segunda mano?

Las discusiones de la comunidad sobre otros casos (como el robo al banco de París y el acosador del hospital) muestran que los jugadores a veces encuentran ambigua la lógica narrativa. Si el caso del incendio escolar te parece poco claro, céntrate en el rastro de datos: la llamada coincidente más temprana es la respuesta prevista, aunque la historia deje algunos hilos sueltos.

Comparar casos para tener contexto

Ayuda ver cómo encaja el caso del incendio escolar junto a las otras investigaciones del juego.

CasoHabilidad SQL principalEnfoque de datos
Incendio escolarFiltrado por tiempo + joinsMarcas de tiempo de llamadas
Acosador del hospitalCoincidencia de cadenas (SUBSTRING)Registros de sospechosos
Robo al banco de ParísOrdenación de patronesPuntuaciones de seguridad

Detectar estos patrones te hace más rápido en cada caso, y es exactamente el tipo de habilidad transferible que el juego está diseñado para construir.

Consejos para resolverlo más rápido

Si quieres avanzar por el caso del incendio escolar con eficiencia, estos hábitos dan sus frutos. Están extraídos de la experiencia de los jugadores y de las buenas prácticas generales de SQL.

  • Inspecciona las tablas primero. Antes de escribir consultas, mira los nombres de las columnas y las filas de muestra.
  • Construye consultas de forma incremental. Añade un filtro a la vez y comprueba los resultados.
  • Usa LIMIT o TOP para previsualizar filas sin desplazarte por cientos.
  • Comenta tu lógica. Incluso notas cortas te ayudan a reconstruir los pasos.
  • Vuelve a leer el enunciado del caso. El detalle de los 14 minutos es tu brújula.

Para tener un contexto más amplio sobre cómo estructura el juego sus investigaciones, la página oficial de Ghost in the SQL Data en Steam es el mejor punto de partida: describe la premisa de las llamadas de emergencia de París y la lista de casos.

Referencia rápida: la solución de un vistazo

PasoAcciónEnfoque de la consulta
1Encontrar el incidente del incendioWHERE description LIKE
2Obtener la hora del primer testigoORDER BY witness_time ASC
3Encontrar llamadas anteriorescall_time < witness time
4Identificar al llamanteJOIN people ON caller_id
5Interpretar el motivoLeer los detalles del join

Sigue esos cinco pasos en orden y tendrás una solución del caso del incendio escolar de Ghost in the SQL Data completa y defendible cada vez.

Por qué este caso enseña SQL de verdad

El caso del incendio escolar no es solo un puzle: es una lección compacta sobre las habilidades que más importan para consultar datos reales. Filtrar por tiempo, hacer joins entre tablas relacionadas y ordenar resultados son el pan de cada día del trabajo con datos. El motor SQL reducido del juego, aunque limitante para los veteranos, mantiene a los principiantes centrados en la lógica en lugar de en trivialidades de sintaxis.

Las reseñas reflejan esta división. Algunos jugadores experimentados encontraron el SQL demasiado básico y terminaron los casos rápidamente, mientras que los novatos elogiaron la guía paso a paso y la ayuda con errores. Si eres nuevo en SQL, el caso del incendio escolar es uno de los mejores lugares para practicar porque el objetivo es concreto: encontrar al llamante temprano.

Los reportes de la comunidad también señalan que el juego es corto y fácil para los veteranos de SQL; un reseñador dijo que llegar a las soluciones "solo requiere unas pocas cláusulas WHERE". Eso es una buena noticia si estás atascado: la respuesta suele ser más simple de lo que crees. Confía en la consulta directa.

Preguntas frecuentes

P: ¿Cuál es la solución del caso del incendio escolar de Ghost in the SQL Data en una frase? R: Encuentra el registro de llamada en la ubicación de la escuela con una marca de tiempo anterior a la observación del primer testigo, y luego haz un join con la tabla de llamantes para identificar quién la hizo.

P: ¿Qué funciones SQL necesito para el caso del incendio escolar? R: Principalmente SELECT, WHERE, LIKE, ORDER BY y JOIN. Evita DATEPART, DATEDIFF y EXTRACT: los jugadores de la comunidad reportan que no son compatibles, así que usa comparaciones directas de marcas de tiempo y SUBSTRING en su lugar.

P: ¿Por qué mi consulta no devuelve al llamante temprano? R: La causa más común es el orden implícito de JOIN antes de WHERE o una cadena de ubicación que no coincide. Verifica tus condiciones de join y comprueba la ortografía exacta del valor de ubicación de la escuela.

P: ¿La solución del caso del incendio escolar de Ghost in the SQL Data es diferente en otras plataformas? R: La lógica es la misma en todas partes: el juego ejecuta la misma base de datos y estructura de casos. Solo la interfaz y las funciones SQL disponibles pueden variar ligeramente.

P: ¿Necesito experiencia en SQL para resolver este caso? R: No. El juego está pensado para principiantes, y el caso del incendio escolar está diseñado para enseñar filtrado por tiempo y joins desde cero. Sigue la tabla de referencia de cinco pasos de arriba y llegarás.

Resolver el caso del incendio escolar se reduce a un hábito: deja que las marcas de tiempo cuenten la historia. Filtra por ubicación, ordena por tiempo, haz un join con el llamante, y el misterio de los 14 minutos se resuelve solo. Con esta solución del caso del incendio escolar de Ghost in the SQL Data en mano, estás listo para cerrar el caso y pasar a la siguiente investigación.