望指点解决一下,谢谢谢谢谢谢谢谢谢谢寻

**求删除SQL数据库中某个表的重复数据 **
假设有表users,其中有字段uname,upwd。没有主键
现在表中存在大量的重复字段!
请用SQL语句删除重复数据,只保留不重复的一条数据!
请问该怎么做啊!!
能不能不用临时表的方法?

delete users where username not in (select distinct uname from A)
去重,先找到重复的数据,再删除。

办法很多,自己参考下:http://blog.csdn.net/anya/article/details/6407280/

没有主键是硬伤,
给你几个思路:
1.如果是oracle,可以用distinct去重,再保留rowid最小的数据,可以用sql实现
2.如果是其他没有rowid的数据库,可以用临时表,存储不重复数据,删除原表后临时表改名,或truncate原表再把数据搬回去,都可以。尤其重复数据量超过表数据50%这是最好的方法,因为delete效率极低还可能锁表
3.编程实现。对我而言sql和存储过程只适合做简单逻辑,过于复杂的流程最好是交给程序,数据库就是存储用的,不必要把运算压力加到数据库身上,那些非用sql不可,或者必须不用临时表的前提是不存在的。合适的才是最好的

http://blog.csdn.net/anya/article/details/6407280/