Inquérito 004, "O homem que sabia o número do relógio": solução passo a passo
O boletim
Três vezes em três semanas, a mesma história em casas de gente de idade.
Bate um homem à porta, de camisa de manga comprida, crachá pendurado, e diz que é da companhia de energia, que veio conferir o relógio porque a conta veio alta. Entra, olha o relógio, sai dizendo que o aparelho está adulterado e que a multa é de quatrocentos reais, mas que se pagar ali na hora, à vista, sai por cento e cinquenta e ele mesmo leva o recibo na segunda.
Dona Nair Bergamasco, setenta e sete anos, pagou cento e cinquenta no Centro. Seu Otacílio Brum, oitenta e um, pagou cento e vinte no Alto do Cruzeiro. Dona Zulmira Caetano, setenta e três, pagou cento e cinquenta, também no Alto do Cruzeiro, e é a única que reparou numa coisa: o homem falou o número do relógio dela antes de olhar o relógio.
A companhia confirmou por telefone que não mandou ninguém e que não cobra multa em dinheiro.
As três vítimas descreveram o mesmo homem. A chefia quer esse homem. Cinco nomes deram depoimento no balcão.
O que o caso ensina: AND, OR e IN.
Pergunta 1
Três golpes do falso leiturista, no Alto do Cruzeiro e no Centro, que o arquivo numera como bairros 4 e 1. Traga do arquivo os estelionatos desses dois bairros.
Ver as dicas do jogo
- Traga da tabela `ocorrencia` o `id`, a `data`, o `bairro_id` e o `resumo` de toda ocorrência de `categoria` estelionato no Alto do Cruzeiro ou no Centro, que são os `bairro_id` 4 e 1.
- A `categoria` vale sempre, e o 'ou' é só dos bairros, entre parênteses: sem eles, a máquina lê o AND primeiro.
- Escreva: `SELECT id, data, bairro_id, resumo FROM ocorrencia WHERE categoria = 'estelionato' AND (bairro_id = 4 OR bairro_id = 1);`
Ver a consulta que resolve
SELECT id, data, bairro_id, resumo FROM ocorrencia WHERE categoria = 'estelionato' AND (bairro_id = 4 OR bairro_id = 1);
O parêntese decide a ordem: primeiro resolve o 'ou' de dentro, depois junta o resultado com a categoria pelo 'e'. Sem ele, a máquina lê o 'e' primeiro.
Resultado
| id | data | bairro_id | resumo |
|---|---|---|---|
| 219 | 2003-04-14 | 1 | Falso funcionário da companhia de energia levou dinheiro de moradora |
| 221 | 2003-04-22 | 4 | Falso leiturista levou dinheiro de morador do Alto do Cruzeiro |
| 224 | 2003-05-06 | 4 | Falso leiturista, terceiro caso; vítima informou o número do relógio |
Pergunta 2
Traga tudo o que vítimas e testemunhas disseram em depoimento nas três ocorrências do golpe, com os três números numa lista só.
Ver as dicas do jogo
- Traga da tabela `depoimento` o `ocorrencia_id`, o `pessoa_id`, o `momento` e o `texto` de todo depoimento das ocorrências 219, 221 e 224.
- Os três números cabem numa lista só, entre parênteses e separados por vírgula, depois de IN, para a coluna `ocorrencia_id`.
- Escreva: `SELECT ocorrencia_id, pessoa_id, momento, texto FROM depoimento WHERE ocorrencia_id IN (219, 221, 224);`
Ver a consulta que resolve
SELECT ocorrencia_id, pessoa_id, momento, texto FROM depoimento WHERE ocorrencia_id IN (219, 221, 224);
IN troca uma fila de 'ou' por uma lista só: a coluna precisa ser igual a um dos valores entre parênteses.
Resultado
| ocorrencia_id | pessoa_id | momento | texto |
|---|---|---|---|
| 219 | 29 | 2003-04-14 16:20 | era um homem de idade, de chapéu, óculos de grau e camisa de manga comprida, com um crachá da companhia pendurado no pescoço. Falou baixo e foi educado o tempo todo. |
| 219 | 16 | 2003-04-15 09:40 | eu estava entregando a correspondência da rua e cruzei com um homem de chapéu e camisa de manga comprida saindo do portão da Dona Nair. Achei que fosse da companhia e dei boa tarde. |
| 221 | 30 | 2003-04-22 17:50 | magro, de chapéu, de óculos, uns sessenta e tantos. Disse que o relógio estava adulterado e que a multa era de quatrocentos reais, mas que à vista saía por cento e vinte. |
| 224 | 31 | 2003-05-06 15:30 | de chapéu e de óculos, e sabia o número do meu relógio de cor: falou o número antes de olhar o relógio, e eu só fui reparar nisso depois que ele saiu. |
| 224 | 39 | 2003-05-07 10:10 | eu entreguei gás na rua de cima naquela tarde e vi um homem de chapéu e camisa de manga comprida com uma pasta debaixo do braço. Não era ninguém da companhia, porque o da companhia eu conheço de anos. |
Pergunta 3, a que o caso puxa no meio do caminho
A aposta do Seu Jaime tirada a limpo: traga do livro do balcão todo papel sobre a Viação Falcão que entrou de setembro de 2002 para cá.
Ver as dicas do jogo
- O livro do balcão é a tabela `protocolo`: todo papel que entra na delegacia ganha um número ali, e a coluna `ocorrencia` diz que ocorrência ele gerou. Traga o `id`, a `data`, o `tipo`, o `assunto`, o `requerente` e a `ocorrencia` de todo papel de setembro de 2002 para cá cujo `assunto` fala na Viação Falcão.
- Duas condições juntas, com AND: 'Falcão' no meio do `assunto`, com LIKE e porcento dos dois lados, e a `data` maior que '2002-09-01'.
- Escreva: `SELECT id, data, tipo, assunto, requerente, ocorrencia FROM protocolo WHERE assunto LIKE '%Falcão%' AND data > '2002-09-01';`
Ver a consulta que resolve
SELECT id, data, tipo, assunto, requerente, ocorrencia FROM protocolo WHERE assunto LIKE '%Falcão%' AND data > '2002-09-01';
LIKE e AND se somam: primeiro acha o pedaço do texto, depois só deixa passar o que também é recente.
Resultado
| id | data | tipo | assunto | requerente | ocorrencia |
|---|---|---|---|---|---|
| 274 | 2002-10-01 | ocorrencia | Vistoria de frota — Viação Falcão | 0 | 177 |
| 277 | 2002-10-09 | ocorrencia | Reclamação sobre transporte escolar — linha do sítio, da Viação Falcão | 19 | 179 |
| 281 | 2002-10-21 | pedido | Pedido de cópia das vistorias da frota da Viação Falcão | 11 | 0 |
| 285 | 2002-11-01 | certidao | Pedido de certidão de ocorrências do veículo AJE-4477, da Viação Falcão | 11 | 0 |
| 347 | 2003-03-18 | ocorrencia | Perturbação do sossego — oficina da Viação Falcão de madrugada | 25 | 212 |
Pergunta 4, a que o caso puxa no meio do caminho
O livro diz que três desses papéis geraram as ocorrências 177, 179 e 212. Traga as três do arquivo.
Ver as dicas do jogo
- Traga da tabela `ocorrencia` o `id`, a `data`, a `categoria` e o `resumo` das ocorrências 177, 179 e 212.
- Os três números numa lista só, depois de IN, para a coluna `id`. Se nada voltar, isso também é resposta.
- Escreva: `SELECT id, data, categoria, resumo FROM ocorrencia WHERE id IN (177, 179, 212);`
Ver a consulta que resolve
SELECT id, data, categoria, resumo FROM ocorrencia WHERE id IN (177, 179, 212);
IN com três números que o arquivo não tem devolve zero linha, e zero linha é resposta: nenhum dos três está lá.
Resultado
| id | data | categoria | resumo |
|---|
Pergunta 5
As três vítimas descreveram o mesmo homem: de óculos, de chapéu e com sessenta anos ou mais, o que no fichário quer dizer nascido antes de 1943. Traga do fichário todo homem que bate com isso.
Ver as dicas do jogo
- Traga da tabela `pessoa` o `id`, o `nome`, o `apelido`, a `ocupacao_antiga`, o `nascimento`, a `ocupacao`, o `porte`, o `sinal` e o `bairro_id` de todo homem da cidade (`sexo` igual a 'M') que usa óculos e chapéu (`oculos` e `chapeu` iguais a 1) e nasceu antes de 1943.
- São quatro condições sobre a mesma ficha, todas amarradas com AND. A data de nascimento se compara como texto: menor que '1943-01-01'.
- Escreva: `SELECT id, nome, apelido, ocupacao_antiga, nascimento, ocupacao, porte, sinal, bairro_id FROM pessoa WHERE sexo = 'M' AND oculos = 1 AND chapeu = 1 AND nascimento < '1943-01-01';`
Ver a consulta que resolve
SELECT id, nome, apelido, ocupacao_antiga, nascimento, ocupacao, porte, sinal, bairro_id FROM pessoa WHERE sexo = 'M' AND oculos = 1 AND chapeu = 1 AND nascimento < '1943-01-01';
AND não tem limite de quantas condições: cada uma filtra um pouco mais, e só sobra quem passa por todas.
Resultado
| id | nome | apelido | ocupacao_antiga | nascimento | ocupacao | porte | sinal | bairro_id |
|---|---|---|---|---|---|---|---|---|
| 8 | Ademir Falcão | o Falcão | 1942-11-30 | dono da Viação Falcão | medio | 1 | ||
| 15 | Sebastião Gouveia | Seu Tião | 1937-01-12 | mecânico aposentado | medio | falta o mindinho da mão esquerda | 6 | |
| 27 | Aristides Camargo | Seu Dico | leiturista da companhia de energia | 1936-02-19 | aposentado | magro | 6 | |
| 28 | Waldir Pizzato | eletricista | 1940-01-28 | aposentado | medio | 4 | ||
| 30 | Otacílio Brum | Seu Ota | carpinteiro | 1922-03-11 | aposentado | magro | 4 |
Quem foi
Ver o culpado e a prova
O culpado é Aristides Camargo.
As provas que fecham o caso:
- A ficha do Seu Dico: aposentado, e antes disso leiturista da companhia de energia.
Seu Dico abriu a porta de camisa de manga comprida. Não era a camisa da companhia; era a camisa boa dele, porque tinha chovido e ele ia à missa.
Não negou. Foi buscar o crachá na gaveta da cômoda, plastificado, com a foto dele de 1991, e entregou nas suas mãos com as duas mãos, do jeito que se entrega documento. Disse que tinha guardado por lembrança. Depois disse que tinha guardado por lembrança e por precaução, e que precaução tinha ganhado em fevereiro, quando o remédio subiu.
Devolveu quatrocentos e vinte reais, que era tudo o que tinha, e ficou devendo o resto.
Dona Sirlei fez o termo e não falou nada, o que é raro nela. Quando o Seu Dico já tinha saído, ela disse para a parede: a gente não sabe o que uma pessoa faz quando fica sem saída. Seu Jaime concordou sem levantar a cabeça.