我有一个数据库,其中表包含连续的重复行。有数据表的演示如下。从mysql中的表中删除连续的重复信息
id name processed
1 xyz 0
2 xyz 0
3 ABC 0
4 ABC 0
我想从该表中删除重复的连续的,一旦重复删除更新处理,以1这样的决赛桌的样子如下。
id name processed
1 xyz 1
3 ABC 1
我这样做如下。
SET @v1 := (select group_concat(`id`) from `names` as m1 where 0 < (select count(*) from `names` as m2 where m2.`id` = m1.`id` - 1 and m2.`name` = m1.`name`));
DELETE FROM names WHERE id IN (@v1);
UPDATE names SET `processed`=1 WHERE `processed`=0
该查询工作正常,但一次删除一行。请帮助我。我想要删除所有选定的行。 在此先感谢。
'DELETE FROM表WHERE名称=名称和ID> id' – 2015-03-02 08:13:52