Sobes.tech
Junior — Middle

შეგიძლიათ აღწეროთ შემთხვევები, როდესაც იყენებდით SQL-საკითხებს და აღწეროთ მათ შორის ყველაზე რთული მაგალითები?

sobes.tech AI

პასუხი AI-სგან

ჩემი SQL-ის შეკითხვების პრაქტიკაში ხშირად ვმუშაობდი რამდენიმე ცხრილიდან შედეგების შეგროვებაზე JOIN-ის გამოყენებით, ასევე აგრეგატებზე და ქვესაკითხვებზე. მაგალითად, ერთ-ერთი რთული შეკითხვა მოიცავდა:

  • მონაცემების გაერთიანებას სამ ცხრილიდან (მომხმარებლები, შეკვეთები, პროდუქტები)
  • ფილტრაციას თარიღისა და შეკვეთის სტატუსის მიხედვით
  • მომხმარებლების მიხედვით გაერთიანებას და შეკვეთების ჯამის გამოთვლას
  • გამოყენებას ქვესაკითხვას თითოეულ შეკვეთაში მაქსიმალური ფასის პროდუქტის მისაღებად

ასეთი შეკითხვის მაგალითი:

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;

ეს შეკითხვა საშუალებას იძლევა მიიღოთ მომხმარებლების სია მათ შეკვეთების რაოდენობით და ჯამური თანხით, რომლებიც აღემატება საშუალო ბილეთს, რაც სასარგებლოა ანალიტიკისა და მარკეტინგისთვის.