Saída:
WITH LastMonthOrders AS (
SELECT o.customerid, o.orderid, op.productid, op.quantity, p.productname, op.quantity * p.unitprice AS total_order_value
FROM orders o
JOIN order_details op ON o.orderid = op.orderid
JOIN products p ON op.productid = p.productid
WHERE o.orderdate >= date_trunc('month', CURRENT_DATE) - INTERVAL '1 month'
AND o.orderdate < date_trunc('month', CURRENT_DATE)
),
CustomerTotalOrderValue AS (
SELECT customerid, SUM(total_order_value) AS total_value
FROM LastMonthOrders
GROUP BY customerid
ORDER BY total_value DESC
LIMIT 1
)
SELECT c.customerid, c.companyname, lm.productid, lm.productname, lm.quantity
FROM CustomerTotalOrderValue ctov
JOIN LastMonthOrders lm ON ctov.customerid = lm.customerid
JOIN customers c ON c.customerid = lm.customerid;
1 comentários
Comentários no Hacker News
A pontuação de desempenho no SQL-Eval é de 76,5%, ficando um pouco atrás dos 83% do GPT-4 e dos 78% do sqlcoder-15b.
Acho que os modelos de text-to-SQL não estão resolvendo o problema certo.
group by, e sim entender o significado dos dados....price, você precisa procurar no wiki ou ler as definições no DBT para entender o que realmente significam.Apontam que isso não é open source; como há restrições baseadas no uso, eu chamaria de "source-available".
Isso é interessante e é uma área que me interessa, mas não acho que seja uma pergunta complexa; é uma questão básica de análise.
Como muitos usos de IA, isso é muito bom como "semente", especialmente para sugerir ideias como agrupar por faixas.
Quem diz que isso é inútil por ser preciso só em 75% deveria considerar duas coisas:
Fico curioso para saber como ele se sai no Bird, que é um benchmark mais complexo e realista.
Pela minha experiência trabalhando com dados, muita gente recebe perguntas da diretoria, precisa entender bem o data warehouse para escrever o SQL que responde a essas perguntas e, às vezes, ainda entregar a resposta em um formato bonito.
Muito legal, embora a licença não seja padrão, então passa uma aparência de open source.
Muito legal, mas fico me perguntando se essa licença permitiria o uso com o Vanna: Vanna