Consultas SQL escritas e depuradas a partir de um schema descrito
Escrever à mão consultas com múltiplos joins, funções de janela e CTEs — e depois caçar o único bug que faz os totais darem errado — consome horas da semana de um analista. A IA escreve SQL correto a partir de um schema descrito em texto, sem precisar de conexão ativa com o banco de dados, e essa é uma das vitórias cotidianas mais citadas. O truque é garantir que ela trabalhe apenas com as tabelas e colunas que você realmente fornece.
Você é um analista de dados sênior e especialista em SQL {{dialect}}. Escreva uma consulta, ou corrija a que eu fornecer. Schema do banco de dados (tabelas, colunas e tipos que estou fornecendo): {{schema}} O que preciso que a consulta retorne: {{question}} Regras: - Use APENAS as tabelas e colunas do schema acima. Nunca invente uma coluna, tabela ou chave de junção. Se o pedido exigir algo que não está no schema, pare e liste o que falta como "[NECESSÁRIO: descreva a coluna ou tabela]" em vez de adivinhar. - Declare suas suposições sobre granularidade, filtros e regras de negócio em uma breve lista de "Suposições" antes da consulta — eu vou corrigi-las. - Comente em uma linha cada CTE ou função de janela que não seja óbvia. - Trate os casos extremos óbvios: NULLs em colunas de junção ou filtro, linhas duplicadas alterando contagens, e divisão inteira. Diga quais você tratou. - Depois da consulta, me dê uma consulta de validação curta que eu possa rodar para conferir o resultado contra um total de controle ou contagem de linhas conhecidos. - Se eu colar uma consulta para depurar, primeiro me diga em uma frase o que realmente estava errado antes de mostrar a correção.
Preencha seus dados e o prompt se atualiza na hora — depois é só copiar.
Suposições: receita = SUM(amount) em pedidos não cancelados; um "cliente pagante" é qualquer cliente com pelo menos um desses pedidos no mês; o mês é agrupado por order_ts em UTC. WITH paid AS ( SELECT customer_id, amount, DATE_TRUNC(order_ts, MONTH) AS mth FROM orders WHERE status != 'cancelled' -- exclui cancelamentos ) SELECT mth, SUM(amount) AS revenue, COUNT(DISTINCT customer_id) AS paying_customers FROM paid WHERE mth BETWEEN '2025-01-01' AND '2025-12-01' GROUP BY mth ORDER BY mth; Validação: o SUM(revenue) aqui deve ser igual a SELECT SUM(amount) FROM orders WHERE status != 'cancelled' AND EXTRACT(YEAR FROM order_ts)=2025.
O fluxo de trabalho completo
- Cole o schema real (ou uma cópia com dados sensíveis removidos), nunca linhas reais de dados de clientes
- Leia a lista de Suposições e corrija qualquer regra de negócio que o modelo tenha entendido errado
- Execute a consulta de validação e confira o resultado contra um total de controle conhecido antes de confiar nele
- Resolva cada sinalização [NECESSÁRIO] com o schema real, nunca com um palpite, antes de entregar a consulta
Fique de olho
Não cole registros reais de clientes, PII ou valores confidenciais para obter uma consulta — um schema descrito e valores fictícios funcionam igual de bem. Chatbots de nível gratuito e Plus podem treinar com sua entrada a menos que você desative essa opção, e expor dados pessoais pode violar o GDPR ou a CCPA; use uma instância aprovada, com treinamento desativado.
Uma consulta que roda não é necessariamente uma consulta correta. O modelo pode, silenciosamente, escolher a granularidade errada do join ou esquecer um filtro, inflando todos os números seguintes — valide contra um total de controle sempre.
Fique atento à divisão inteira e ao tratamento de NULLs: eles produzem resultados que parecem corretos e confiáveis, mas estão errados, em vez de gerarem erros óbvios.
De onde isso vem
Cada caso de uso deste site se baseia em relatos reais que os analistas de dados em atividade compartilham — nada foi inventado por nós.
Mais casos de uso de IA para os analistas de dados
Scripts de limpeza e perfilamento de dados em Python que você pode auditar
comunicaçãoResumos executivos que transformam um gráfico em decisão
redaçãoDicionários de dados e documentação de consultas redigidos a partir do próprio SQL
planejamentoPedidos vagos de stakeholders transformados em um plano de análise delimitado
criativoO gráfico certo para a mensagem, não só para os dados
← Todos os 6 casos de uso: como os analistas de dados usam a IA