SQL tutorial. db Hotels exercises. SQL SERVER.
Baza: Hotele/Hotels
Zadanie nr: 10
Treść: Oblicz udział procentowy hoteli w danym kraju względem wszystkich hoteli w bazie
Polecenia/funkcje w zapytaniu: DECLARE, SELECT, COUNT, FROM, WHERE, CAST(), JOIN, GROUP BY, ORDER BY
Rozwiązanie:
Zapytanie:
DECLARE @ile_hoteli numeric =
(
SELECT
COUNT(*)
FROM
hotels
)
SELECT
C.country_name AS Kraj
,CAST(COUNT(*)*100/@ile_hoteli AS NUMERIC(6,2)) AS [%]
FROM
hotels H
JOIN countries C ON H.hotel_country_id = C.country_id
GROUP BY
C.country_name
ORDER BY
2 DESC
Wynik: