我有一个名为'prices‘的表,其结构如下:'id','price,'availability_id’和'rate_id‘。当用户进行更改时,将写入新记录,而不是更新现有记录。我需要做的是删除具有匹配的'availability_id‘和'rate_id’的重复记录,只保留具有最高'id‘的记录。
我已经设法使用以下MySQL列出了重复项:
select 'id',
`availability_id`,
`rate_id`,
count(*)
from prices
group by 'id',
`availability_id`,
`rate_id`
having count(*) > 1我真的很感谢任何关于删除这些重复项的建议。
发布于 2012-03-26 18:52:28
这样如何:
DELETE p1 FROM prices p1, prices p2
WHERE p1.id < p2.id
AND p1.availability_id = p2.availability_id
AND p1.rate_id = p2.rate_idhttps://stackoverflow.com/questions/9870514
复制相似问题