Linguagem Natural → SQL + Extrator de KPI
Transforme perguntas em inglês simples em SQL seguro e validado e uma tabela limpa de KPIs que você pode executar imediatamente.
Visão geral do prompt
Dicas para você
Cole apenas o esquema relevante e algumas linhas de exemplo para manter o foco do LLM. | Declare a granularidade desejada logo no início (ex.: diária por produto). | Inclua suposições de fuso horário e moeda para evitar inconsistências. | Peça casos de teste que você possa executar rapidamente no seu editor SQL. | Mantenha os SELECTs idempotentes e comente as principais suposições de junção.
Da equipe de operaçõesNexusAi TechnologyProblema que resolve
Conecta a lacuna entre perguntas de negócios e SQL funcional, reduzindo idas e vindas e erros nas consultas.
Geração de SQL somente leitura
Consultas focadas estritamente em SELECT com limites claros.
Saída pronta para KPI
Retorna um esquema de tabela limpo alinhado a dashboards.
Checklist de validação
Testes embutidos para capturar armadilhas comuns de dados.
Notas sobre dialetos
Orientações para BigQuery, Snowflake e Postgres.
Instruções do prompt de IA
Atue como: Engenheiro Sênior de Analytics e tradutor de BI.
Por que essa tarefa é importante: Stakeholders fazem perguntas de negócios em linguagem natural. Convertê-las em SQL preciso e uma saída limpa de KPIs acelera decisões e reduz retrabalho.
Limites importantes:
- Gere apenas SQL somente leitura (SELECT). Nunca escreva, altere ou exclua.
- Assuma SQL ANSI; se for dialeto específico (ex.: BigQuery, Snowflake), peça ao usuário para especificar.
- Prefira CTEs, aliases claros e joins explícitos; não use SELECT *.
- Exija filtros, janelas de tempo e suposições de granularidade explícitas.
Entradas do usuário (cole abaixo deste prompt):
- Pergunta de negócio em inglês simples
- Métrica(s) alvo e definições, se conhecidas
- Esquemas das tabelas (nomes, colunas, tipos de dados), granularidade por linha e valores de exemplo
- Fuso horário, moeda e suposições sobre atualidade dos dados
- Dialeto SQL (se não for ANSI)
Objetivos:
1) Traduzir a pergunta em uma intenção analítica precisa e fórmula da métrica.
2) Produzir SQL seguro e legível com CTEs e comentários inline.
3) Retornar um pequeno formato de resultado KPI pronto para dashboards.
4) Listar verificações de validação e casos de borda.
Fluxo de análise:
1) Reafirme a pergunta, identifique entidades, granularidade, janelas e filtros.
2) Elabore definição da métrica e dimensões.
3) Proponha plano de junção de tabelas com chaves e estratégia para valores nulos.
4) Gere SQL com: WITH ctes AS (...), SELECT final; inclua cabeçalhos de comentário.
5) Forneça casos de teste (linhas/valores esperados) e explique como amostrar dados.
6) Descreva como adaptar para dialetos Snowflake/BigQuery/Postgres, se necessário.
Formato de saída requerido:
- Seção A: Intenção analítica (itens)
- Seção B: SQL (bloco de código)
- Seção C: Esquema do resultado KPI (tabela de colunas, tipos, significado)
- Seção D: Verificações de validação (lista)
- Seção E: Casos de borda e limitações
Controles de qualidade:
- Verifique se joins usam chaves corretas e tratam duplicatas.
- Assegure que predicados de janela temporal sejam explícitos e otimizáveis.
- Confirme que métricas são agregações na granularidade declarada.
Checklist de verificação:
- O SQL retorna uma linha por granularidade pretendida?
- NULLs e fuso horário são tratados?
- Filtros estão consistentes com a pergunta de negócio?
Instrução final: Produza a saída completa. Se faltar alguma entrada necessária, liste perguntas claras para esclarecimento primeiro, depois forneça um rascunho assumindo os padrões mais conservadores.
Resultado esperado
Seção A: Intenção - Métrica: usuários ativos em 7 dias por produto e plano - Granularidade: diária por product_id, plano Seção B: SQL WITH events AS ( SELECT user_id, product_id, plan, event_time::date AS event_date FROM analytics.events WHERE event_time >= CURRENT_DATE - INTERVAL '30 days' ), active AS ( SELECT event_date, product_id, plan, COUNT(DISTINCT user_id) AS dau FROM events GROUP BY 1,2,3 ) SELECT event_date, product_id, plan, SUM(dau) OVER (PARTITION BY product_id, plan ORDER BY event_date ROWS BETWEEN 6 PRECEDING AND CURRENT ROW) AS mau_7 FROM active; Seção C: Esquema do KPI - event_date (date): Dia - product_id (text): Chave do produto - plan (text): Plano de preços - mau_7 (int): usuários ativos em 7 dias Seção D: Validação - Verificar duplicidade de user_ids por dia - Confirmar alinhamento do fuso horário Seção E: Casos de borda - Eventos esparsos causam zeros; preencher dias faltantes
Jornada de implementação
Criar rascunho de SQL a partir de uma pergunta
Abra o ChatGPT e cole a pergunta de negócio, esquema e restrições usando o prompt. Solicite SQL ANSI com CTEs e formato de resultado KPI. Espere uma consulta completa mais verificações de validação.
8 minRefinar com sugestões conscientes de código
Abra o Codex no seu editor para analisar o SQL, ajustar especificidades do dialeto (ex.: funções TIMESTAMP do BigQuery) e adicionar predicados seguros. Espere uma consulta otimizada pronta para execução.
6 minExecutar e interpretar
Execute o SQL no seu banco de dados, exporte uma pequena amostra para o Google Sheets e cole o resultado de volta no ChatGPT usando um prompt explicativo para confirmar o formato do KPI e identificar outliers.
10 min
