🏠 Accueil
Benchmarks
📊 Tous les Benchmarks 🦖 Dinosaure v1 🦖 Dinosaure v2 ✅ To-Do List Apps 🎨 Pages Libres 🎯 FSACB - Showcase 🌍 Traduction
Modèles
🏆 Top 10 Modèles 🆓 Modèles Gratuits 📋 Tous les Modèles ⚙️ Modes Kilo Code
Ressources
💬 Prompts IA 📖 Glossaire IA 🔗 Liens Utiles
advanced

Otimização de Consulta SQL com Subqueries Complexas

#sql #banco-de-dados #performance #otimizacao

Otimize uma instrução SQL lenta envolvendo múltiplas junções, subconsultas e agregações.

Você recebeu o seguinte esquema de banco de dados relacional para um sistema de e-commerce: tabelas 'Clientes' (id, nome, cidade_id), 'Pedidos' (id, cliente_id, data, total), 'ItensPedido' (pedido_id, produto_id, quantidade, preco_unitario) e 'Produtos' (id, nome, categoria). A consulta atual abaixo, que visa encontrar os top 10 clientes que mais gastaram em uma categoria específica no último ano, está apresentando tempo de execução excessivo. Escreva uma versão otimizada desta consulta, explique quais índices seriam necessários para garantir a performance e justifique as alterações feitas na lógica de acesso aos dados. Consulta original: SELECT c.nome, SUM(ip.quantidade * ip.preco_unitario) AS total_gasto FROM Clientes c JOIN Pedidos p ON c.id = p.cliente_id JOIN ItensPedido ip ON p.id = ip.pedido_id JOIN Produtos prod ON ip.produto_id = prod.id WHERE prod.categoria = 'Eletrônicos' AND p.data >= DATE_SUB(NOW(), INTERVAL 1 YEAR) GROUP BY c.id ORDER BY total_gasto DESC LIMIT 10;