【发布时间】:2021-12-28 13:26:47
【问题描述】:
我有一个表,其中包含要删除的重复条目,只保留一个重复条目。如您所见,它们在每一列中都完全相同,无法区分它们:
我已使用此查询来确定我有多少重复项:
select url_rewrite_id, category_id, product_id, count(*) cnt
from catalog_url_rewrite_product_category
group by url_rewrite_id, category_id, product_id
having cnt > 1
order by cnt desc
我可以使用它的变体来删除所有重复项:
delete
from catalog_url_rewrite_product_category
where url_rewrite_id in (
select url_rewrite_id
from catalog_url_rewrite_product_category
group by url_rewrite_id, category_id, product_id
having count(*) > 1
)
我遇到的问题是它会删除 所有 重复的条目并且不会保留最后一个。
【问题讨论】: