从一个表返回多个列,其中没有一个列的重复项

时间:2019-04-29 20:58:37

标签: sql sql-server

我有一个包含列ID和电子邮件(以及其他列)的SQL Server表。 id列包含不同的值,email列可能包含重复的值。我可以很容易地检索所有不同的电子邮件值,但是,我真正需要的是具有不同电子邮件值的id值列表。例如

id    email
1     fred@bloggs.com
2     joe@bloggs.com
3     fred@bloggs.com

我正在寻找返回的ID值1和2(或2和3-在重复的电子邮件中选择哪个ID值都没有关系)。

有关更多背景信息,该表包含成员列表。向成员发送消息时,消息接口需要成员ID。但是,我不想将重复的消息发送到任何电子邮件地址,并且当有成员使用相同的电子邮件地址时,发送该消息的成员并不重要。

1 个答案:

答案 0 :(得分:3)

只需使用聚合:

select min(id) as id, email
from t
group by email;