系统教程 · 2024年5月21日

如何查询 MySQL 中 refund_id 相同且 return_code 为 SUCCESS 的记录,并筛选出 return_code=SUCCESS 出现次数大于或等于 2 的记录?

如何查询 MySQL 中 refund_id 相同且 return_code 为 SUCCESS 的记录,并筛选出 return_code=SUCCESS 出现次数大于或等于 2 的记录?

“纵有疾风来,人生不言弃”,这句话送给正在学习的朋友们,也希望在阅读本文后,能够真的帮助到大家。我也会在后续的文章中,陆续更新相关的技术文章,有好的建议欢迎大家在评论留言,非常感谢!

mysql 查询两个字段特定值且重复记录

如何查询 refund_id 相同,且 return_codesuccess 的记录,并且该记录中的 return_code=success 出现大于或等于 2 条重复记录?

解决方案:

使用以下 sql 查询:

select * from 表 where refund_id in (
    select refund_id from 表
    where return_code = 'SUCCESS'
    group by refund_id
    having count(*) >= 2
);

此查询通过以下步骤实现:

  1. 内部查询 select refund_id from 表… 找到所有 return_codesuccessrefund_id,并按 refund_id 分组。
  2. having count(*) >= 2 子句过滤出出现次数大于或等于 2 的 refund_id 组。
  3. 外部查询 select * from 表… 使用 in 操作符将内部查询的子结果作为 refund_id 的筛选条件,返回符合条件的记录。

因此,执行此查询将返回 refund_id 相同,且 return_code=success 的记录,并且该记录中的 return_code=success 出现至少 2 条重复记录。

终于介绍完啦!小伙伴们,这篇关于《如何查询 MySQL 中 refund_id 相同且 return_code 为 SUCCESS 的记录,并筛选出 return_code=SUCCESS 出现次数大于或等于 2 的记录?》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~主机宝贝公众号也会发布数据库相关知识,快来关注吧!