加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 如何根据A COLUMN的不同值来选择行

发布时间:2020-12-12 16:17:01 所属栏目:MsSql教程 来源:网络整理
导读:我需要查询表以返回行,但是我无法正确查询表.这是我的表格视图: Id MailId EmailAddress Name1 1 a@a.com Mr. A2 1 b@b.com Mr. B3 1 c@c.com Mr. C4 1 d@d.com Mr. D5 1 a@a.com Mr. A6 2 e@e.com Mr. E7 2 a@a.com Mr. A8 3 f@f.com Mr. F9 4 d@d.com Mr.
我需要查询表以返回行,但是我无法正确查询表.这是我的表格视图:
Id                MailId          EmailAddress          Name
1                 1               a@a.com               Mr. A
2                 1               b@b.com               Mr. B
3                 1               c@c.com               Mr. C
4                 1               d@d.com               Mr. D
5                 1               a@a.com               Mr. A


6                 2               e@e.com               Mr. E
7                 2               a@a.com               Mr. A
8                 3               f@f.com               Mr. F
9                 4               d@d.com               Mr. D

10                5               f@f.com               Mr. F
11                6               d@d.com               Mr. D

结果集应返回:

Id                MailId          EmailAddress          Name
1                 1               a@a.com               Mr. A
2                 1               b@b.com               Mr. B
3                 1               c@c.com               Mr. C
4                 1               d@d.com               Mr. D

6                 2               e@e.com               Mr. E
8                 3               f@f.com               Mr. F

换句话说:首先,我想选择不同的电子邮件地址,然后返回包含不同电子邮件地址的行.

注意:只有使用“Distinct”关键字在这里不起作用,因为它将选择不同的行.我的要求是选择不同的电子邮件地址,然后选择包含这些地址的行.

编辑:我不能使用“组合”关键字,因为这样我也必须使用组合(Id)(这是PK),这样做将返回两行具有相同的EmailAddress值但具有不同的ID.

解决方法

看看你的输出可能以下查询可以工作,试试看:
SELECT * FROM tablename
WHERE id IN
(SELECT MIN(id) FROM tablename GROUP BY EmailAddress)

这将为每个不同的电子邮件地址选择一行,最小id的行是您的结果似乎描绘的行

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读