gpt4 book ai didi

mysql - Sql如何从多列中查找重复记录

转载 作者:行者123 更新时间:2023-11-29 07:25:47 25 4
gpt4 key购买 nike

我想从我的 MySql 表中查找行,该表在两列上包含相同的值。

我的 table 是这样的

ID   NAME   EMAIL         Status
1 John asd@asd.com True
1 Sam a@gmail.com False
2 Tom b@gmail.com True
2 Bob bob@asd.com true
3 Jam 8@gmail.com False
3 Mam 7@gmail.com False
5 Tom a23@asd.com True

因此,我想要来自上表的数据,如果重复则具有相同的 ID 和状态,否则它应该给我具有单个 ID 且状态 = true 的数据。结果应该是这样的:

ID   NAME   EMAIL         Status 
2 Tom b@gmail.com True
2 Bob bob@asd.com true
5 Tom a23@asd.com True

这意味着,我只需要状态为真且 ID 相同的那些行。

最佳答案

您可以使用 group byhaving 子句,如下所示

select *
from tab
where id in
(
select id
from tab
group by id
having max(status)=min(status)
)
and status!='false'

Rextester Demo

关于mysql - Sql如何从多列中查找重复记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53840606/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com