Я искал простой запрос SQL для решения очень простой проблемы.Я проводил очень простую кампанию в социальных сетях, и у нас есть база данных mysql с 2 полями: электронная почта и AffiliateID
SELECT
users.Email, users.ID,
users.AffiliateID,
Count(users.AffiliateID) as afid
from users
order by afid desc
Когда я запускаю этот запрос, он возвращает только 1 запись с правильным счетом, только наибольшее количество.
Мне бы хотелось, чтобы список всех пользователей был отсортирован по людям, у которых в базе данных больше всего записей 'affiliateID'.
Это скажет нам, кому дать первый приз.в конкурсе обмена на.
Здесь есть несколько похожих вопросов, но эти решения, похоже, не подходят для этой ситуации.
То, что я хотел бы, это нисходящий вывод всех пользователейв системе ранжированы их родителем (спонсором), чтобы мы могли создать что-то похожее на «таблицу лидеров»
Группировка по количеству и общему количеству
MySQL: Общее количество в группе по запросу
Спасибо за вашу помощь!
вот обновленный запрос
select u.Email, AffiliateID, count(u.AffiliateID) as afid
from users u
where SiteID=17
group by u.Email
order by afid desc
, который генерирует изображение выше ...
но это нне то, что мне нужно.Мне нужно, чтобы сначала появился пользователь 509218, а затем счетчик количества пользователей, на которые он ссылался, а затем следующий 5dd. Затем на третьем месте и на четвертом месте 471 и 472 с привязкой.