很简单的语句   可用一个命令删除表中的重复数据  

delete from t_log where log_id not in
(select log_id from
(select max(log_id) as log_id from t_log  group by member_id) as  e);
 
例举一个简单的例子
 
a列有主键,而b列没有约束
 
我们看到b列有重复值,手动删除少量数据还可以,如果上千条就吃不消了。
我们首先要找出没有重复的数据

OK就是它,多余的都没有显示出来
那就可以用delete的命令开始删除了
可问题来了
这怎么删呢!  查询出的数据有问题,要改改查询方式
 查询出a的记录,就可以用a的记录把重复数据删除了

怎么还是错的呢!  我上网查过,发现时mysql自己不支持这种update,在oracle中就可做到。所以只能是多写一步,使update记录去修改一个临时表。

查询结果一样没问题,只要把没显示出来的数据删掉,就不没有重复的数据了。
成功删除2条记录
OK!重复数据被删除了。