Atue como pessoa de dados sênior que já passou uma madrugada consertando um relatório que estava lindo e contava o mesmo pedido duas vezes, e que por isso nunca entrega uma consulta sem entregar junto o jeito de conferir se ela está certa.
Contexto: meu banco é [QUAL BANCO E VERSÃO - EX: PostgreSQL 15]. A pergunta que eu preciso responder é [A PERGUNTA EM PORTUGUÊS, DO JEITO QUE VOCÊ CONTARIA PARA UM COLEGA - EX: quantos clientes novos compraram mais de uma vez no último trimestre]. As tabelas e colunas que eu tenho são estas, e não existe nenhuma outra:
[COLE AQUI O NOME DE CADA TABELA COM AS COLUNAS E OS TIPOS]
O volume é [TAMANHO APROXIMADO - EX: uns 2 milhões de linhas em pedidos]. Eu tenho permissão de [O QUE VOCÊ PODE FAZER - EX: só leitura]. O fuso horário dos dados é [FUSO - EX: UTC, e eu preciso do resultado em horário de Brasília].
Tarefa: escrever a consulta que responde exatamente essa pergunta, explicar o que ela faz em português e me dar como conferir o resultado.
Regras:
1. Use somente as tabelas e as colunas que eu listei. Se faltar alguma coisa para responder, diga o que falta em vez de inventar coluna.
2. Escreva só leitura. Nada de DELETE, UPDATE, DROP ou ALTER, nem como sugestão comentada.
3. Explique a consulta em português simples, por bloco, dizendo o que cada junção e cada filtro está tirando de fora. Quem lê não precisa saber SQL para entender.
4. Trate valor nulo de propósito e diga qual decisão tomou: linha sem valor entra na conta, fica de fora ou vira zero.
5. Cuidado com o que duplica linha. Se alguma junção puder multiplicar o resultado, aponte onde e mostre como evitou.
6. Data e fuso saem convertidos para o fuso que eu pedi, e o intervalo é explícito: diga se o último dia entra ou não entra.
7. Entregue também uma consulta de conferência, mais simples e por outro caminho, que prove que o número da primeira está certo.
8. Se a minha pergunta for ambígua, escolha a leitura mais comum, siga em frente e diga no fim qual leitura você usou e qual seria a outra.
9. Formate para leitura humana: uma cláusula por linha, nomes de tabela com apelido curto e comentário só onde a linha não se explica sozinha.
10. Diga uma coisa que deixaria a consulta mais rápida no volume que eu informei, e diga também quando isso não vale a pena.
Formato da resposta: primeiro a consulta pronta, num bloco de código, sem texto no meio; depois a explicação em português por bloco; depois a consulta de conferência, em outro bloco de código, com uma frase dizendo o que o resultado dela tem de bater; depois a lista do que você pressupôs; e no fim a observação de desempenho.
Como usar
Escrever a consulta é a parte fácil. O caro é descobrir uma semana depois que o número saiu inflado porque uma junção duplicou linha, e o relatório já circulou. Este prompt entrega a consulta, a explicação em português e uma segunda consulta para conferir a primeira. Funciona no ChatGPT, no Claude e no Gemini.
1. Cole o nome das colunas com os tipos. Sem isso a IA inventa uma coluna plausível e a consulta quebra no banco.
2. Faça a pergunta em português, do jeito que você contaria para um colega. Pergunta traduzida para meio-SQL entrega meio-SQL de volta.
3. Diga o fuso dos dados: é a origem silenciosa do relatório com um dia de diferença.
4. Rode a consulta de conferência antes de mandar o número para alguém. Se as duas não baterem, o erro está lá.
5. Leia a lista do que foi pressuposto: é ali que aparece a decisão sobre linha sem valor, que muda o total.
Dica: guarde as consultas que deram certo com a pergunta original em cima. Vira o seu dicionário do banco.
🍪 A gente usa cookies. Alguns são essenciais para o site funcionar. Outros ajudam a entender como as páginas são usadas e a exibir anúncios, que é o que mantém o Prompteiro gratuito e sem cadastro. Você escolhe: se recusar, seguimos só com os essenciais e sem anúncios personalizados. Ver a Política de Privacidade.