come_on_air
2016-03-07 04:53
采纳率: 23.6%
浏览 1.8k

mysql数据库去除重复数据

现在存在一个比赛信息 数据表(matchInfo),里面的字段有
id,MatchName,MatchTime,master,guest,现在是因为写入数据库的时候会出现重复数据,请问一下应该怎么过滤?sql语句怎么写?图片说明

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

7条回答 默认 最新

  • c-xuan 2016-03-07 05:08

    select distinct matchtime,matchname,master,guest from matchinfo

    打赏 评论
  • crt_litianlong 2016-03-07 05:14

    通过分组查询可以简单的实现

    select * from matchInfo group by MatchName,master,guest

    打赏 评论
  • oyljerry 2016-03-07 05:30

    根据这三列做group,然后按你的需求排序,再取第一个

    打赏 评论
  • daidaidechuxingzhe 2016-03-07 05:36

    插入的时候也做 重复验证 查询的时候 也group by 这样就可以去重了

    打赏 评论
  • daidaidechuxingzhe 2016-03-07 05:37

    插入的时候也做 重复验证 查询的时候 也group by 这样就可以去重了

    打赏 评论
  • Jimbo 2016-03-07 07:25

    select distinct 来导出特定的id,再将表内ID不在导出列表的删去就可以实现这个目的。

    打赏 评论
  • 还记不记得、 2021-08-16 16:51

    若可以删除数据,建议直接删除多余数据,如果不能删除,你就使用 distinct 或者 group by 都能实现你要的结果,楼上已经有很多人说, 我就不重复了,
    避免发生此类情况,你的数据库没有唯一字段限制,业务层也没有相关的数据重复判断插入,需优化。优化方案,可以添加个唯一列,默认使用主建值,或者业务层处理,有很多方法的

    打赏 评论

相关推荐 更多相似问题