У меня есть следующие таблицы.
Customer_table
Customer_ID |Фамилия |Имя |City_ID |Region_ID |Country_ID
Country_table
Country_ID |Страна
Region_table
Region_ID |Регион |Country_ID
City_table
City_ID |Город |Region_ID |Country_ID
Мне нужно найти количество клиентов по городам, то есть для всех стран, для всех регионов в странах, для всех городов в регионе, мне нужно получить номер нет.клиентов в каждом городе.
Например, я написал следующий SQL, чтобы получить нет.клиентов в каждой стране:
SELECT a.country_id , b.country,count(*)
FROM Customer_Table a INNER JOIN Country_Table b
ON a.country_id = b.country_id
GROUP BY b.country , b.country_id ;
и получить нет.клиентов в каждом регионе для конкретной страны:
SELECT a.region_id , b.region , count(*)
FROM Customers_table a INNER JOIN Region_Table b
ON a.region_id = b.region_id
WHERE a.country_id ='USA' AND b.country_id ='USA'
GROUP BY region_id , country ;
Мне нужно найти количество клиентов по городам, т. е. для всех стран, для всех регионов в странах, для всех городов врегион, мне нужно получить нет.клиентов в каждом городе, что-то вроде
Country | Region | City | no.of customers
USA | CA | San Francisco | 53
USA | CA | Los Angeles | 45
USA | CA | Sacramento | 16
USA | WA | Seattle | 46
USA | WA | Olympia | 9
UK | England | London | 89
UK | England | Nottingham | 71
UK | Wales | Cardiff | 69
UK | Wales | Newport | 23
..................and so on for other countries.