【发布时间】:2015-11-13 01:15:35
【问题描述】:
我注意到 gmail 不关心电子邮件中是否存在 .,这意味着 ex.ample@gmail.com 等同于 exam.ple@gmail.com,这是 Google 的一个不错的功能,但对于尝试使用的开发人员来说是一个 PITA维护唯一电子邮件地址的列表。
我有一张包含电子邮件列表的表格。 gmail 用于检测唯一电子邮件的确切规则是什么,给定一组电子邮件,我如何找到 实际 唯一电子邮件?
这是我的架构:
sql> select * from subscribers;
id | email
-------------------------
1 | user.name1@gmail.com
2 | username.1@gmail.com
3 | user3@example.net
...
预期的输出是一组唯一(且有效!)的电子邮件:
id | email
-------------------------
1 | user.name1@gmail.com
3 | user3@example.net
【问题讨论】:
-
你使用的数据库是什么?
-
select distinct replace(email,'.','') from yourtable -
@Indian 它不会也替换
gmail.com中的.吗? -
@JohnBupit - 试试这个sqlfiddle.com/#!9/b3eb5/9
-
@Indian Still misses some cases,我想。考虑电子邮件
mailcomsomething@yahoo.com,它将被转换为mail.comsomething@yahoo.com- 这是一个无效的电子邮件。