Policz, ile zamówień złożył każdy z klientów. Wynik ułóż od największej ilości zamówień.
Baza: Northwind, Tabele: dbo.Customers, dbo.Orders, Kolumny: CustomerID, CompanyName, OrderID, Wynik: 91 rows
[spoiler title=’Rozwiązanie’ collapse_link=’true’]SELECT C.CustomerID, C.CompanyName, COUNT(O.OrderID) as Zamowienia
FROM dbo.Customers as C
LEFT JOIN dbo.Orders as O on C.CustomerID = O.CustomerID
GROUP BY C.CustomerID, C.CompanyName
ORDER BY Zamowienia DESC
— W funkcji COUNT() wstawiłam zliczanie po OrderID zamiast *, ponieważ * zlicza wszystkie wiersze, również z wartością NULL gdyby się jakieś pojawiły – a teoretycznie mogą, bo mamy złączenie lewostronne – więc wynik mógłby być przekłamany.
[/spoiler]