【发布时间】:2013-08-06 06:58:08
【问题描述】:
我有这样的桌子
table_id item_id vendor_id category_id
1 1 33 4
2 1 33 4
3 1 33 2
4 2 33 4
5 2 33 2
6 3 33 4
7 3 33 4
8 1 34 4
9 1 34 4
10 3 35 4
这里table_id 是主键和表,共有 98000 个条目,包括我通过执行查询找到的 61 个重复条目
SELECT * FROM my_table
WHERE vendor_id = 33
AND category_id = 4
GROUP BY item_id having count(item_id)>1
在上表table_id 1,2 和 6,7 重复。我需要从我的表中删除 2 和 7(总共 61 个重复条目)。如何使用 where 子句 vendor_id = 33 AND category_id = 4 的查询从表中删除重复条目?我不想删除其他重复条目,例如 table_id 8,9
我无法索引该表,因为我需要保留一些需要的重复条目。我需要删除符合某些条件的重复项
【问题讨论】:
-
在我的表中有 98000 个条目,所以在执行子查询时,它不起作用
-
讽刺的是,你的帖子是重复条目...stackoverflow.com/questions/3311903/…
-
我不认为 table_id 为 8 和 9 的行是重复的,它们有不同的 item_id
标签: mysql sql duplicates duplicate-removal