如果你的情况也是,没有主键约束,导致出现了很多完全一致的记录,这时候如何去重复就比较麻烦了,因为是sqlserver 2000 还没有支持rowid这种东西,坑。
不过,我这里有个法子,挺好用的。
首先给你需要去重的表添加一列,设置为主键 + 自增标识 (我这里取名 tempID)
然后通过sql去掉重复记录:
delete from 表名 where 字段1(判定是否重复的字段) in (select 字段1 from 表名 group by 字段1 having count(*) > 1) and tempID(字段2,这里是我们新加的字段)
not in (select min(tempID) from mem_localmemberbaseinfo group by 字段1 having count(*)>1)
原理: 不删除根据字段1分组排序出来的tempID最小的那一行