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;
Ин навъ дархост имкон медиҳад, ки рӯйхати корбарон бо шумора ва ҷамъоварии фармоишҳояшон, ки аз миёнаи чек зиёданд, гирифта шавад, ки барои таҳлил ва маркетинг муфид аст.