Sobes.tech
Junior — Middle

Pode contar casos em que utilizou consultas SQL e descrever exemplos dos mais complexos?

sobes.tech IA

Resposta da IA

Na minha prática com consultas SQL, frequentemente trabalhei com conjuntos de resultados de várias tabelas usando JOIN, bem como com agregações e subconsultas. Por exemplo, uma das consultas complexas incluía:

  • Junção de dados de três tabelas (utilizadores, pedidos, produtos)
  • Filtragem por data e estado do pedido
  • Agrupamento por utilizadores com cálculo do total de pedidos
  • Uso de uma subconsulta para obter o preço máximo do produto em cada pedido

Um exemplo dessa consulta:

SELECT u.UserName, COUNT(o.OrderID) AS OrdersCount, SUM(oi.Quantity * oi.Price) AS TotalSpent
FROM Users u
JOIN Orders o ON u.UserID = o.UserID
JOIN OrderItems oi ON o.OrderID = oi.OrderID
WHERE o.OrderDate >= '2023-01-01' AND o.Status = 'Completed'
GROUP BY u.UserName
HAVING SUM(oi.Quantity * oi.Price) > (
    SELECT AVG(TotalPrice) FROM (
        SELECT SUM(Quantity * Price) AS TotalPrice
        FROM OrderItems
        GROUP BY OrderID
    ) AS OrderTotals
)
ORDER BY TotalSpent DESC;

Este tipo de consulta permite obter uma lista de utilizadores com a quantidade e o montante dos seus pedidos que excedem o valor médio, o que é útil para análise e marketing.