无主键情况下可以用distinct   删除重复记录吗?请问SQL怎么写?

解决方案 »

  1.   

    看是什么数据库
    比如 oracle,表 t ,字段 cname 重复 可以DELETE T WHERE ROWID in
       (SELECT MIN(ROWID) FROM T GROUP BY cname having count(*)>1)
      

  2.   

    ROWID  为系统行ID,是唯一的
      

  3.   

    无主键情况下可以用distinct   删除重复记录吗?请问SQL怎么写?-------------------------
    可以,但要借用臨時表
    Select Distinct * Into #T From TableName
    Truncate Table TableName
    Insert TableName Select * From #T
    Drop Table #T