Inquérito 006, "Entre sete e nove": solução passo a passo
O boletim
Na quinta-feira, 26 de junho, a Escola Herculano Braga fez a reunião pedagógica de toda última quinta-feira do mês, das sete às nove da noite, e a cidade inteira sabe do horário porque está pregado no portão desde 1994.
Dona Rute Beltrão, cinquenta e quatro anos, professora há trinta e um, saiu de casa às seis e quarenta e voltou às nove e vinte. A porta dos fundos estava aberta, sem nenhuma marca. Levaram uma televisão de catorze polegadas, um rádio e duzentos e vinte reais que estavam num envelope na gaveta da cozinha, dinheiro da excursão da sexta série.
Ocorrência 235, categoria furto. Não houve arrombamento: a casa foi aberta.
A chave fica embaixo do vaso da varanda desde 1978. Dona Rute já contou isso, em trinta e um anos de sala de aula, para um número de pessoas que ela mesma não consegue estimar.
A chefia quer saber quem esteve naquela rua entre sete e nove da noite.
O que o caso ensina: BETWEEN.
Pergunta 1
A reunião da escola foi na quinta, 26 de junho de 2003, das sete às nove da noite. Traga todo chamado do 190 dessas duas horas, contando as duas pontas.
Ver as dicas do jogo
- A reunião da escola foi na quinta, 26 de junho de 2003, das sete às nove da noite. Traga da tabela `chamado` o `momento`, o `telefone`, o `lugar_informado` e o `resumo` de cada chamado dessas duas horas, contando as duas pontas.
- 'De tal a tal' numa palavra só: BETWEEN, com data e hora nas duas pontas, '2003-06-26 19:00' e '2003-06-26 21:00'.
- Escreva: `SELECT momento, telefone, lugar_informado, resumo FROM chamado WHERE momento BETWEEN '2003-06-26 19:00' AND '2003-06-26 21:00';`
Ver a consulta que resolve
SELECT momento, telefone, lugar_informado, resumo FROM chamado WHERE momento BETWEEN '2003-06-26 19:00' AND '2003-06-26 21:00';
BETWEEN pega tudo o que está entre duas pontas, incluindo as duas: é o 'de tal a tal' numa palavra só. Data e hora aqui são texto, e texto no formato ano-mês-dia hora-e-minuto se compara igualzinho ao relógio.
Resultado
| momento | telefone | lugar_informado | resumo |
|---|---|---|---|
| 2003-06-26 19:38 | 3452-2743 | Vila Aurora | Som alto em festa de aniversário na rua 9 |
| 2003-06-26 20:12 | 3452-1955 | Centro | Moto com escapamento aberto parada na rua, com o motor desligado, faz meia hora |
| 2003-06-26 20:47 | 3452-3805 | Beira da Linha | Cachorro solto derrubando lixo na calçada |
| 2003-06-26 21:00 | 3452-6218 | Estação | Vaca solta andando na rua de trás do galpão |
Pergunta 2, a que o caso puxa no meio do caminho
O Seu Jaime quer o livro do balcão de junho de 2003: traga todo papel que entrou do primeiro ao último dia do mês.
Ver as dicas do jogo
- O que entrou pelo balcão em junho de 2003, do dia primeiro ao dia trinta? Traga da tabela `protocolo` o `id`, a `data`, o `tipo`, o `assunto`, o `requerente` e a `ocorrencia` de cada papel.
- BETWEEN na coluna `data`, de '2003-06-01' a '2003-06-30'. As duas pontas entram.
- Escreva: `SELECT id, data, tipo, assunto, requerente, ocorrencia FROM protocolo WHERE data BETWEEN '2003-06-01' AND '2003-06-30';`
Ver a consulta que resolve
SELECT id, data, tipo, assunto, requerente, ocorrencia FROM protocolo WHERE data BETWEEN '2003-06-01' AND '2003-06-30';
BETWEEN com duas datas pega o mês inteiro, com o primeiro e o último dia junto. A coluna ocorrencia diz que registro cada papel gerou no arquivo.
Resultado
| id | data | tipo | assunto | requerente | ocorrencia |
|---|---|---|---|---|---|
| 378 | 2003-06-06 | oficio | Notificação do Ministério Público sobre o inquérito 14 | 0 | 0 |
| 379 | 2003-06-09 | ocorrencia | Reclamação de ruído na garagem de ônibus da Estação, de madrugada | 25 | 230 |
| 380 | 2003-06-09 | ocorrencia | Registro de ocorrência — perturbação do sossego em residência | 48 | 231 |
| 381 | 2003-06-15 | ocorrencia | Registro de ocorrência — furto em residência | 131 | 232 |
| 382 | 2003-06-17 | requisicao | Requisição de exame de corpo de delito | 0 | 0 |
| 383 | 2003-06-18 | pedido | Pedido de cópia de termo de declaração | 104 | 0 |
| 384 | 2003-06-18 | ocorrencia | Acidente sem vítimas — Kombi escolar AJE-4477 na Estrada do Café | 0 | 233 |
| 385 | 2003-06-22 | certidao | Pedido de certidão de antecedentes | 126 | 0 |
| 386 | 2003-06-22 | oficio | Ofício da Secretaria de Segurança sobre escala de plantão | 0 | 0 |
| 387 | 2003-06-24 | requisicao | Requisição do Ministério Público: remessa do inquérito 14 em 30 dias | 0 | 0 |
| 388 | 2003-06-25 | ocorrencia | Representação do Conselho Tutelar sobre o transporte escolar | 0 | 234 |
| 389 | 2003-06-26 | ocorrencia | Furto em residência durante a reunião pedagógica | 36 | 235 |
| 390 | 2003-06-30 | pedido | Pedido de cópia de boletim de ocorrência | 84 | 0 |
Pergunta 3, a que o caso puxa no meio do caminho
Agora a numeração do arquivo: traga as ocorrências de número 228 a 235, as duas pontas contando.
Ver as dicas do jogo
- Agora a numeração do arquivo. Traga da tabela `ocorrencia` o `id`, a `data`, a `categoria` e o `resumo` de toda ocorrência de número 228 a 235, contando os dois.
- BETWEEN também serve para número, na coluna `id`, e número vai sem aspas.
- Escreva: `SELECT id, data, categoria, resumo FROM ocorrencia WHERE id BETWEEN 228 AND 235;`
Ver a consulta que resolve
SELECT id, data, categoria, resumo FROM ocorrencia WHERE id BETWEEN 228 AND 235;
BETWEEN também funciona em número, não só em data ou hora: pega tudo entre duas pontas, incluindo as duas pontas.
Resultado
| id | data | categoria | resumo |
|---|---|---|---|
| 228 | 2003-05-28 | dano | Vidro de janela quebrado com pedrada, com as partes orientadas |
| 229 | 2003-06-03 | outros | Cachorro solto derrubando lixo na calçada, sem providência no momento |
| 231 | 2003-06-09 | perturbacao | Discussão entre vizinhos por causa de cachorro, com testemunha ouvida no local |
| 232 | 2003-06-15 | furto | Furto de mercadoria de dentro de veículo destrancado, sem testemunhas |
| 235 | 2003-06-26 | furto | Casa da professora Rute Beltrão aberta e furtada durante a reunião pedagógica |
Pergunta 4
Traga os depoimentos que a pergunta do Cabeção queria de verdade: todos os tomados da noite de 26 de junho até o fim do dia 27.
Ver as dicas do jogo
- Traga da tabela `depoimento` o `id`, a `ocorrencia_id`, o `pessoa_id`, o `momento` e o `texto` de todo depoimento tomado da noite de 26 de junho até o fim do dia 27.
- Leia a consulta do Cabeção de fora para dentro: a gaveta e as colunas estão certas, e o que decide é o `WHERE`. A coluna `momento` guarda a data com a hora; veja até onde vai a ponta de cima do `BETWEEN` dele.
- Escreva: `SELECT id, ocorrencia_id, pessoa_id, momento, texto FROM depoimento WHERE momento BETWEEN '2003-06-26' AND '2003-06-28';`
Ver a consulta que resolve
SELECT id, ocorrencia_id, pessoa_id, momento, texto FROM depoimento WHERE momento BETWEEN '2003-06-26' AND '2003-06-28';
Data sozinha também é texto, e '2003-06-26' é menor que '2003-06-26 22:10' na comparação de texto — por isso o BETWEEN pega a data inteira e as horas dela junto. Cuidado com a ponta de cima: se fosse só '2003-06-27', o BETWEEN perderia qualquer depoimento com hora marcada nesse mesmo dia, porque '2003-06-27 10:00' é maior que '2003-06-27' na comparação de texto. Por isso a ponta de cima aqui é o dia seguinte inteiro, '2003-06-28'. O número da ocorrência trazia as mesmas quatro folhas, mas a pergunta era a janela de datas, que pega também o depoimento que ainda não foi amarrado a ocorrência nenhuma.
Resultado
| id | ocorrencia_id | pessoa_id | momento | texto |
|---|---|---|---|---|
| 173 | 235 | 40 | 2003-06-26 22:10 | tinha uma moto parada na rua com o motor desligado, vermelha, e a placa eu não vi, que a rua estava escura. O escapamento é daqueles abertos, dá para ouvir de dentro de casa. |
| 174 | 235 | 36 | 2003-06-27 10:00 | a porta não foi forçada, foi aberta; a chave fica embaixo do vaso da varanda e isso não é segredo para ex-aluno nenhum. Levaram a televisão, o rádio e o envelope da excursão da sexta série. |
| 175 | 235 | 12 | 2003-06-27 11:20 | a reunião começou às sete em ponto e terminou depois das nove. A Dona Rute ficou até o fim e foi ela que fechou a sala. |
| 176 | 235 | 29 | 2003-06-27 15:40 | eu moro na esquina e não vi ninguém entrar. Quando tem reunião na escola essa rua fica vazia, é o que eu posso dizer. |
Pergunta 5
A vizinha viu uma moto vermelha parada na rua. Traga do arquivo todo veículo vermelho, moto ou não.
Ver as dicas do jogo
- A cidade tem veículo de toda cor. Traga da tabela `veiculo` o `id`, a `placa`, o `tipo`, o `modelo`, a `cor`, o `ano` e o `dono_id` de todo veículo vermelho.
- Uma condição de igual sobre a `cor`, com o texto entre aspas e escrito do jeito que o arquivo escreve: 'vermelha'.
- Escreva: `SELECT id, placa, tipo, modelo, cor, ano, dono_id FROM veiculo WHERE cor = 'vermelha';`
Ver a consulta que resolve
SELECT id, placa, tipo, modelo, cor, ano, dono_id FROM veiculo WHERE cor = 'vermelha';
Texto na condição vai entre aspas simples e tem que bater letra por letra com o que está guardado: 'vermelha' acha, 'Vermelho' não acha.
Resultado
| id | placa | tipo | modelo | cor | ano | dono_id |
|---|---|---|---|---|---|---|
| 2 | AKB-0316 | automovel | Fiat Uno Mille | vermelha | 1997 | 69 |
| 9 | AIG-3085 | utilitario | Ford F-1000 | vermelha | 1994 | 9 |
| 19 | AIL-5502 | motocicleta | Honda CG 125 | vermelha | 1996 | 21 |
| 20 | AJE-7784 | caminhao | Chevrolet D-60 carroceria | vermelha | 1987 | 131 |
| 28 | AJH-6650 | motocicleta | Honda CG 125 | vermelha | 1998 | 37 |
| 31 | AKB-3319 | motocicleta | Yamaha DT 180 | vermelha | 1994 | 38 |
| 45 | AJF-3513 | automovel | Fiat Uno Mille | vermelha | 1976 | 114 |
Pergunta 6
O livro de ponto não é só da delegacia: a escola, a cooperativa e a cerealista também batem ponto. Traga todo ponto batido fora da delegacia, o lugar que o arquivo numera como 1, de 16 a 30 de junho de 2003, as duas pontas contando.
Ver as dicas do jogo
- O livro de ponto não é só da delegacia: a escola, a cooperativa e a cerealista também batem ponto. Traga da tabela `ponto` o `pessoa_id`, o `local_id`, a `data`, a `entrada`, a `saida` e a `situacao` de todo ponto batido fora da delegacia de 16 a 30 de junho, contando os dois dias.
- Duas condições com AND: `local_id` diferente de 1, que se escreve `<>`, e a `data` entre '2003-06-16' e '2003-06-30', com BETWEEN.
- Escreva: `SELECT pessoa_id, local_id, data, entrada, saida, situacao FROM ponto WHERE local_id <> 1 AND data BETWEEN '2003-06-16' AND '2003-06-30';`
Ver a consulta que resolve
SELECT pessoa_id, local_id, data, entrada, saida, situacao FROM ponto WHERE local_id <> 1 AND data BETWEEN '2003-06-16' AND '2003-06-30';
<> quer dizer diferente, e vale para número e para texto. Junto com um BETWEEN na data, separa um pedaço do livro sem ler o livro inteiro.
Resultado
| pessoa_id | local_id | data | entrada | saida | situacao |
|---|---|---|---|---|---|
| 22 | 11 | 2003-06-16 | 07:30 | 17:35 | normal |
| 23 | 11 | 2003-06-16 | 07:30 | 17:35 | normal |
| 37 | 11 | 2003-06-16 | 07:30 | 18:40 | normal |
| 65 | 3 | 2003-06-16 | 09:05 | 18:11 | normal |
| 46 | 3 | 2003-06-16 | 08:31 | 17:48 | normal |
| 22 | 11 | 2003-06-17 | 07:30 | 17:35 | normal |
| 23 | 11 | 2003-06-17 | 07:30 | 17:35 | normal |
| 37 | 11 | 2003-06-17 | 07:30 | 18:40 | normal |
| 56 | 8 | 2003-06-17 | 18:00 | plantao | |
| 22 | 11 | 2003-06-18 | 07:30 | 17:35 | normal |
| 23 | 11 | 2003-06-18 | 07:30 | 17:35 | normal |
| 37 | 11 | 2003-06-18 | 07:30 | 18:40 | normal |
| 48 | 3 | 2003-06-19 | 08:27 | 18:02 | normal |
| 146 | 8 | 2003-06-19 | 08:42 | 17:31 | normal |
| 65 | 3 | 2003-06-19 | 08:47 | 17:51 | normal |
| 22 | 11 | 2003-06-20 | 07:30 | 17:35 | normal |
| 23 | 11 | 2003-06-20 | 07:30 | 17:35 | normal |
| 37 | 11 | 2003-06-20 | 07:30 | 18:40 | normal |
| 117 | 8 | 2003-06-20 | 07:51 | 17:47 | normal |
| 22 | 11 | 2003-06-23 | 07:30 | 17:35 | normal |
| 23 | 11 | 2003-06-23 | 07:30 | 17:35 | normal |
| 37 | 11 | 2003-06-23 | 07:30 | 18:40 | normal |
| 62 | 8 | 2003-06-23 | 07:59 | 19:32 | normal |
| 46 | 3 | 2003-06-23 | 08:44 | 17:49 | normal |
| 22 | 11 | 2003-06-24 | 07:30 | 17:35 | normal |
| 23 | 11 | 2003-06-24 | 07:30 | 17:35 | normal |
| 37 | 11 | 2003-06-24 | 07:30 | 18:40 | normal |
| 46 | 3 | 2003-06-24 | falta | ||
| 62 | 8 | 2003-06-24 | 08:44 | 17:58 | normal |
| 22 | 11 | 2003-06-25 | 07:30 | 17:35 | normal |
| 23 | 11 | 2003-06-25 | 07:30 | 17:35 | normal |
| 37 | 11 | 2003-06-25 | 07:30 | 18:40 | normal |
| 48 | 3 | 2003-06-25 | 08:26 | 17:45 | normal |
| 22 | 11 | 2003-06-26 | 07:30 | 17:35 | normal |
| 23 | 11 | 2003-06-26 | 07:30 | 17:35 | normal |
| 37 | 11 | 2003-06-26 | 07:30 | 17:35 | normal |
| 117 | 8 | 2003-06-26 | 08:14 | 17:34 | normal |
| 22 | 11 | 2003-06-27 | 07:30 | 17:35 | normal |
| 23 | 11 | 2003-06-27 | 07:30 | 17:35 | normal |
| 37 | 11 | 2003-06-27 | 07:30 | 18:40 | normal |
| 22 | 11 | 2003-06-30 | 07:30 | 17:35 | normal |
| 23 | 11 | 2003-06-30 | 07:30 | 17:35 | normal |
| 37 | 11 | 2003-06-30 | 07:30 | 18:40 | normal |
Quem foi
Ver o culpado e a prova
O culpado é Adilson Queiroz.
As provas que fecham o caso:
- O Seu Aldo disse ao telefone que o Didi fica fechando a balança até as seis e quarenta, todo santo dia. No dia 26, o ponto do Didi marca a saída às 17h35.
- O ponto do Didi em 25 e 26 de junho: na véspera saiu às 18h40, como sempre; no dia do furto, às 17h35.
- O ponto do Didi em 26 e 27 de junho: no dia do furto saiu às 17h35; no dia seguinte, às 18h40, como sempre.
- O ponto do Didi em 26 de junho saiu às 17h35; em 16 de junho, às 18h40, como em todos os outros dias da quinzena.
- O ponto do Didi em 26 de junho saiu às 17h35; em 17 de junho, às 18h40, como em todos os outros dias da quinzena.
- O ponto do Didi em 26 de junho saiu às 17h35; em 18 de junho, às 18h40, como em todos os outros dias da quinzena.
- O ponto do Didi em 26 de junho saiu às 17h35; em 20 de junho, às 18h40, como em todos os outros dias da quinzena.
- O ponto do Didi em 26 de junho saiu às 17h35; em 23 de junho, às 18h40, como em todos os outros dias da quinzena.
- O ponto do Didi em 26 de junho saiu às 17h35; em 24 de junho, às 18h40, como em todos os outros dias da quinzena.
- O ponto do Didi em 26 de junho saiu às 17h35; em 30 de junho, às 18h40, como em todos os outros dias da quinzena.
A televisão estava na casa da avó do Didi, ligada, com a avó assistindo. Ele tinha dito que era da firma, por conta do salário.
Dona Rute foi até a delegacia e pediu para falar com ele. Não deixaram, e ela falou assim mesmo, do corredor, uma coisa curta: eu me lembro de você. Dona Sirlei ofereceu café a ela, e ela tomou em pé.
Ele devolveu cento e oitenta dos duzentos e vinte reais. Os quarenta tinham ido na prestação da moto.
Seu Jaime datilografou tudo, carimbou e ficou. Quando a sala esvaziou, ele pediu para você ler de novo os três números que faltavam entre duzentos e vinte e oito e duzentos e trinta e cinco. Você leu. Ele anotou os três no caderno, ficou olhando o total e disse para você guardar aquela página na pasta que sai da delegacia, e não na gaveta que fica.