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

php – 有选择地删除MySQL中的重复记录

发布时间:2020-12-13 22:38:13 所属栏目:PHP教程 来源:网络整理
导读:我有一张桌子: PRICE_UPDATEid (int 5,auto-increment,primary,unique)part_number (varchar 10,non-null)price (float(10,2),non-null) 一些part_numbers是重复的(一个或多个重复记录).有时价格相同,有时价格也不同. 如何根据part_number删除所有重复行,如
我有一张桌子:
PRICE_UPDATE
id (int 5,auto-increment,primary,unique)
part_number (varchar 10,non-null)
price (float(10,2),non-null)

一些part_numbers是重复的(一个或多个重复记录).有时价格相同,有时价格也不同.

如何根据part_number删除所有重复行,如果价格全部相同,则保留最高价格或仅记录1条记录?

这在直接MySQL中是否可行?

DELETE t1
    FROM YourTable t1,YourTable t2
    WHERE t1.part_number = t2.part_number
        AND (t1.price,t1.id) < (t2.price,t2.id)

(编辑:李大同)

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

    推荐文章
      热点阅读