Итак, у меня есть таблица подписчиков пользователей и страны, в которой они находятся.
UserID | Name | Country
-------+-------------------+------------
1 | Zaphod Beeblebrox | UK
2 | Arthur Dent | UK
3 | Gene Kelly | USA
4 | Nat King Cole | USA
Мне нужно составить список всех пользователей в процентах от каждой из стран.Мне также нужно, чтобы все более мелкие страны-члены (менее 1%) были отнесены к категории «ДРУГИЕ».
Я могу выполнить простой "top x" членов тривиально с помощью
SELECT COUNTRY, COUNT(*) AS POPULATION FROM SUBSCRIBERS GROUP BY COUNTRY ORDER BY POPULATION DESC LIMIT 10
и могу генерировать проценты с помощью PHP-кода на стороне сервера, но я не совсем знаю, как:
- Выполните все это в SQL, включая процентные вычисления непосредственно в результате.
- Объедините всех членов с процентом менее 1% в одну категорию ДРУГИЕ.
ИтакМне нужно что-то вроде этого:
Country | Population
--------+-----------
USA | 25.4%
Brazil | 12%
UK | 5%
OTHERS | 65%
Ценю помощь!