如果用到索引就可一使用seek 或find进行查找,并依据找到结果选择删除。如果没有索引,可使用locate for 查找,然后配合cont就可以找到重复的记录,然后你就可以选择删除了。关键是定位数据表中记录的位置。
USE 表DO WHILE NOT EOF() N=RECNO() M=A LOCATE ALL FOR A=M FOR RECNO()>N IF !EOF() DELETE ALL FOR A=M FOR RECNO()>N ENDIF GO TOP SKIP N-1ENDDOPACK
呵呵,如果用这种方法,数据不用多,几万条你试试速度
啸凡:大老虎打了个盹!累啦!
抱歉,写错了。LOCATE ALL FOR A=M AND RECNO()>NDELETE ALL FOR A=M AND RECNO()>N