MySQL查询从电子邮件地址字段计算唯一域

Ian*_*Ian 32 mysql email dns count

我想更好地了解客户使用的域名.我可以explode通过每个地址轻松地在PHP中执行此操作并以此方式计算域.但我想知道是否有办法通过简单的MySQL查询获取此信息?

这是示例输出的样子:

gmail.com | 3942

yahoo.com | 3852

hotmail.com | 209

...等等,第一列是电子邮件地址域,第二列是该域的地址数.

Wol*_*lph 83

你必须做这样的事情:

SELECT substring_index(email, '@', -1) domain, COUNT(*) email_count
FROM table
GROUP BY substring_index(email, '@', -1)

-- If you want to sort as well:
ORDER BY email_count DESC, domain;
Run Code Online (Sandbox Code Playgroud)

  • 非常好,谢谢!我在 count(*) 上添加了一个排序,我得到了我需要的结果。 (2认同)