Sobes.tech
Junior — Middle

Tudna mesélni olyan esetekről, amikor SQL-lekérdezéseket használt, és ismertetné a legbonyolultabb példákat?

sobes.tech MI

Válasz az MI-től

SQL-lekérdezéseim során gyakran dolgoztam több táblából származó eredményhalmazokkal JOIN használatával, valamint aggregációkkal és alműveletekkel. Például az egyik összetettebb lekérdezés a következőket tartalmazta:

  • Adatok összekapcsolása három táblából (felhasználók, rendelések, termékek)
  • Szűrés dátum és rendelési állapot szerint
  • Csoportosítás felhasználók szerint, a rendelések összegének kiszámításával
  • Egy alművelet használata a termék maximális árának lekérésére minden rendelésben

Egy ilyen lekérdezés példája:

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;

Ez a lekérdezés lehetővé teszi, hogy listát kapjunk a felhasználókról a rendeléseik számával és összegével, amelyek meghaladják az átlagos számlát, ami hasznos elemzésekhez és marketinghez.