mysql 中如何查找相同的数据

思路:

在表中6,7号数据,他们的除了ID不同,其他的数据相同;首先,在表中找到一个组合主键,然后以主键group by 然后计算出大于1的记录,然后在通过组合主键找到这条记录,然后就能把记录找到了。就找了两条相同的记录,

select 
    *
from
    tb_stu as t
        join
    (select 
        count(*) as amount, t5.stuId, t5.stuName
    from
        (select 
        *
    from
        tb_stu as s) as t5
    group by stuId , t5.stuName) as t5 ON t.stuId = t5.stuId  
        and t.stuName = t5.stuName
where
    t5.amount > 1

 其实还可以这样理解,查找除了主键id不想同,但是其余数据均相同的其他数据

select t.id from tb_stu as t  
join  tb_stu as s
on t.stuId = s.stuId and t.stuName = s.stuName
and t.stuClass = s.stuClass and t.id!=s.id;

通过上面的代码可以求出id,id都出来那么就很好求这条记录了

转载于:https://www.cnblogs.com/rocky-AGE-24/p/4873351.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值