Я работаю над скриптом, чтобы определить, какие поставщики электронной почты в нашей базе данных являются самыми популярными. URL-ссылки - это имя таблицы, а «contact_email» - контактный адрес электронной почты, связанный со ссылкой.Группа MySQL по подсчету Подстрока
Я написал следующий запрос MySQL
SELECT
url_links.contact_email,count(url_links.contact_email)
FROM
url_links
group by contact_email order by count(url_links.contact_email) DESC
Этот запрос возвращает все сообщения электронной почты и подсчета лица, подавшего объявление. То, что я хотел бы сделать, это изменить скрипт MySQL, чтобы он подсчитал весь провайдер. т.е. Gmail.com, Yahoo.com, Hotmail.com и т. д.
Я мог бы прочитать весь этот массив в PHP и «взорваться» на знаке @ и сгруппировать его таким образом, однако мне любопытно, если сообщество знает, как изменить этот скрипт, чтобы вместо подсчета каждого адреса электронной почты он возвращал счет всех адресов электронной почты в Gmail, Yahoo и т. д. в группе по
Aka a 'Group By Substring', где все элементы будут сгруппированы всем после знака «@».
Спасибо!
спасибо Сезара. Я попробовал ваш скрипт, однако он вернул тот же результат, что и мой скрипт. Один результат по электронной почте вместо одного результата для одного поставщика. – Viktor
Привет, Виктор, я обновил свой ответ, я группировал (и выбирал) неправильное поле «url_links.contact_email» – Cesar
Это сработало! Могу ли я задать вам бонусный вопрос? Как бы вы добавили дополнительное поле MySQL, которое называется «процентом», т. Е. Оно принимает полный счет всей базы данных и выражает его как процент от «списка» у данного провайдера? – Viktor