🕵️

Database Detective

LOS ZORANGELES · DIVISÃO DE CRIMES MENORES
🛡️ Divisão de Crimes Menores

Resolva crimes com o poder do SQL

Bem-vindo(a) à Los Zorangeles, a cidade cítrica onde nada de grave acontece — mas alguém sempre esqueceu de estacionar direito. Crie seu distintivo, escreva consultas SQL de verdade contra um banco de dados real e desvende quem é o culpado.

Arquivo confidencial da Divisão de Crimes Menores de Los Zorangeles
1

Leia o caso

Cada crime vem com uma cena, depoimentos de testemunhas e registros de câmeras de segurança espalhados em tabelas do banco de dados.

2

Escreva a consulta

Use SELECT, WHERE, JOIN e o que mais precisar para cruzar pistas — cor de cabelo, carro, local e horário — até sobrar um único suspeito.

3

Acuse e pontue

Quanto menos consultas e acusações erradas, mais pontos. Suba de patente e apareça no ranking da delegacia.

📖 Antes de começar

A cidade que quase não tem crime

Los Zorangeles nasceu de uma safra recorde de laranjas e da teimosia de um prefeito que jurou que nada de grave aconteceria por ali. E ele quase conseguiu: roubo à mão armada, ninguém nunca ouviu falar. Mas campainha de bicicleta tocada com má intenção, carrinho de suco sem licença, pombos alimentados fora de hora — isso, a cidade tem de sobra.

Você acabou de ser transferido(a) para a Divisão de Crimes Menores. O motivo exato ainda não está nos seus arquivos, mas a papelada bate: distintivo novo, mesa emprestada, e uma pilha de casos esperando alguém disposto a fazer as perguntas certas ao banco de dados da cidade.

Nos últimos meses, um padrão incomodou os veteranos da divisão: pequenos delitos, aparentemente sem conexão nenhuma entre si, foram acontecendo cada vez mais perto uns dos outros — no tempo, e no mapa. Ninguém levou muito a sério. Até bater na mesa errada. A sua.

Quadro de investigação com pistas conectadas por barbante
Campanha

Modo História

Uma sequência de capítulos narrativos, cada um mais difícil que o anterior, até você encarar o misterioso Barão da Casca. Progresso salvo na sua conta.

Infinito

Modo Desafio

Casos aleatórios sem fim. Resolva quantos quiser, acumule pontos e suba no ranking com todos os detetives da delegacia.

Dica do
Detetive

Use AS pra organizar os nomes das colunas do resultado, e sempre desconfie do suspeito óbvio demais.

Acesso de Detetive

Suas informações ficam salvas no banco de dados da delegacia — o mesmo login funciona de qualquer aparelho.
FICHA FUNCIONAL · NOVO(A) DETETIVE

Bem-vindo(a) à Divisão de Crimes Menores

Ninguém sabe ao certo por que você foi parar aqui. Talvez tenha sido a nota alta no teste de bancos de dados. Talvez tenha sido a única vaga aberta na delegacia naquele mês. O certo é que agora você tem uma mesa emprestada, um distintivo novo em folha, e uma pilha de casos te esperando. Bem-vindo(a) à divisão que ninguém pediu pra existir, mas que ninguém consegue fechar. Aqui, uma campainha de bicicleta tocada fora de hora é tratada com a mesma seriedade de um crime de verdade — questão de princípio, dizem os veteranos. Sua missão a partir de agora: abrir o banco de dados, cruzar as pistas, e descobrir quem fez o quê. Los Zorangeles está de olho em você.

Tutorial: Como Investigar

O banco de dados de cada caso

Cada caso recria um pequeno banco de dados com estas tabelas:

suspeitos — quem são as pessoas envolvidas (nome, idade, ocupação, cor do cabelo, cor do carro, altura, antecedentes)
cena_crime — onde e quando o crime aconteceu
depoimentos — o que testemunhas disseram sobre a aparência do culpado (e, em casos mais difíceis, outros detalhes)
registros_seguranca — em quais locais e horários cada suspeito foi visto pelas câmeras
disque_denuncia — dicas de cidadãos, quase sempre inúteis (mas engraçadas)

Como ler as pistas

O raciocínio central do jogo é sempre o mesmo: a cena do crime diz onde e quando; os registros de segurança dizem quem estava lá naquele momento; os depoimentos descrevem características do culpado. Cruzando essas três coisas, sobra um único suspeito.

Em capítulos mais avançados, os depoimentos trazem pistas extras — profissão, faixa de idade, número de antecedentes, faixa de altura — então a consulta precisa combinar mais condições ao mesmo tempo.

Passo a passo de um caso

1) Veja onde e quando o crime aconteceu:

SELECT * FROM cena_crime;

2) Leia os depoimentos para saber a aparência do culpado (ex: "cabelo ruivo" e "carro azul"):

SELECT * FROM depoimentos;

3) Cruze local e horário do crime com os registros de segurança, filtrando pela aparência descrita:

SELECT s.*
FROM suspeitos s
JOIN registros_seguranca r ON s.id = r.suspeito_id
JOIN cena_crime c ON r.local = c.local AND r.horario = c.horario
WHERE s.cor_cabelo = 'ruivo' AND s.cor_carro = 'azul';

Se a consulta retornar uma única linha, é o seu suspeito — selecione-o e apresente a acusação!

Pontuação e dificuldade

Cada caso começa valendo 1000 pontos. Você perde pontos por consultas além das 3 primeiras e por acusações erradas — então pense antes de acusar, mas não tenha medo de explorar os dados.

No Modo História, a dificuldade sobe a cada capítulo: mais suspeitos, mais registros de câmera para filtrar e, a partir da metade da campanha, pistas extras (profissão, idade, antecedentes, altura) que exigem consultas mais completas. O Modo Desafio também fica mais difícil a cada poucos casos resolvidos.

Sempre que precisar relembrar um comando, abra a aba "Comandos SQL Úteis" na tela do caso.

🔎
Bem-vindo de volta, Detetive
Pronto para desvendar mais mistérios?
Pontuação
0 pts
Casos Encerrados
0
Sequência
0 dia(s)
Conquistas
0
0 de 100 capítulos

Painel da Delegacia

Campanha

Modo História

Capítulo 1 de 20 disponível.

Infinito

Modo Desafio

Casos aleatórios sem fim. Farme pontos e suba no ranking compartilhado da delegacia.

Uma única chance

Modo Impossível

Muitos suspeitos, dificuldade máxima. Errou a acusação uma vez, o caso é perdido — sem segunda chance. Sequência atual: 0 · Recorde: 0

3 minutos por caso

Modo Contra o Tempo

Resolva antes do relógio zerar. Quanto mais rápido, maior o bônus de pontos.

Top Detetives

  1. Carregando…

Pergunta de Segurança

Cadastre (ou troque) sua pergunta de segurança — é assim que você recupera a senha se esquecer.

Conquistas (0/0)

Mural da Comunidade

Um quadro de recados público — tudo que você escreve aqui fica visível pra todo mundo. Seja gentil, detetive.

Carregando…

🛡️ Painel Admin

👥
Detetives
📅
Casos Hoje
🎮
Jogando Agora
🚫
Suspensos

Carregando…

Meus Casos

Caso Modo Consultas Erros Pontos Quando
Carregando…

Modo História — Mapa de Capítulos

Pequenos crimes por toda Los Zorangeles escondem algo maior. Resolva cada capítulo para desbloquear o próximo.

Arquivo confidencial
ABERTO
Capítulo 1 de 20

MEMORANDO INTERNO · DIVISÃO DE CRIMES MENORES

Promovido(a)

Você conseguiu. O Barão da Casca foi identificado, preso, e — pra surpresa de ninguém — descascado (metaforicamente, pelos advogados). A notícia correu rápido pela delegacia. Em poucos dias, um memorando chegou à sua mesa: você foi promovido(a) para a Divisão de Crimes Complexos de Los Zorangeles. A partir de agora, os casos mudam de figura — sequestros, fraudes de grande escala, conspirações que atravessam a cidade inteira. As consultas SQL vão precisar ficar bem mais afiadas. Novos capítulos dessa fase chegam em breve. Por enquanto, continue treinando no Modo Desafio — a Divisão de Crimes Complexos não aceita gente destreinada.

Quadro de investigação internacional
COMUNICADO OFICIAL · FORÇA-TAREFA INTERNACIONAL

A Divisão de Crimes Internacionais

Você fechou o cerco sobre a maior conspiração que Los Zorangeles já viu — mas o dinheiro por trás do Barão da Casca não nasceu aqui. Ele atravessou fronteiras, passou por bancos que não existem no papel, e financiou muito mais do que uma cidade cítrica. Uma força-tarefa internacional bateu à porta da delegacia esta manhã. A partir de agora, você foi convocado(a) para a Divisão de Crimes Internacionais — e os casos mudam de figura: contrabando de arte, lavagem de dinheiro transnacional, corrupção diplomática. Uma coisa importante: aqui, ninguém aceita um álibi só porque alguém disse. A partir de agora, cada palavra precisa ser verificada contra os registros reais — e cada veículo tem uma placa que pode não pertencer a quem você imagina. Cinquenta novos capítulos. Uma verdade final esperando no fim de todos eles.

Ficha do Caso
ABERTO
Carregando…

▸ Esquema do Banco de Dados
suspeitos(id, nome, idade, ocupacao, cor_cabelo, cor_carro, altura_cm, antecedentes)
cena_crime(caso_id, tipo_crime, local, horario, descricao)
depoimentos(id, testemunha, depoimento)
registros_seguranca(id, suspeito_id, local, horario)
disque_denuncia(id, texto) — quase sempre inútil, mas cidadão é cidadão
Comandos SQL Úteis
⚠️ Só de referência
o console roda sobre SQLite — sintaxes de outros bancos aqui servem pra estudo, podem não executar.
📌 Igual em qualquer um dos 5 bancos:
SELECT * FROM suspeitos;
ver todos os suspeitos
WHERE cor_cabelo = 'ruivo'
filtrar por uma condição exata
WHERE a = 'x' AND b = 'y'
combinar duas ou mais pistas ao mesmo tempo
WHERE idade BETWEEN 20 AND 30
filtrar por uma faixa de valores
WHERE nome LIKE 'A%'
buscar por um padrão de texto
WHERE cor_carro IN ('azul','verde')
filtrar por uma lista de opções
SELECT s.* FROM suspeitos s
JOIN registros_seguranca r ON s.id = r.suspeito_id

cruzar dados de duas tabelas
SELECT DISTINCT cor_cabelo FROM suspeitos;
listar valores únicos de uma coluna
🔄 Muda dependendo do banco escolhido acima:
ORDER BY idade DESC LIMIT 5
ordenar e limitar a quantidade de resultados
CONCAT(nome, ' - ', ocupacao)
concatenar textos
WHERE nome LIKE '%ana%'
buscar ignorando maiúsculas/minúsculas
SELECT `nome` FROM `suspeitos`
como "proteger" nomes de coluna/tabela
Console de Consulta
Consultas feitas neste caso: 0
Apresentar Acusação

Aponte o suspeito

Top Detetives
  1. Carregando…
Ranking compartilhado com todos que jogam.
Bloco de Notas
Salvo automaticamente neste navegador.