大意是这样的,数据库的表格TABLE1中有很多数据,但是有些记录是重复的,比如aa
bb
cc
aa
dd
ee
ff我想把重复的记录aa删除一个(但要保留一个,不能全部删除),不知道用SQL语句如何描述?

解决方案 »

  1.   

    弄个临时表
    SELECT DISTINCT表临时表
    DELETE
    将临时表的数据再反过来插入这个表。
      

  2.   

    不同的数据库有所不同,如果是oracle数据库的话,每条记录的ID是不同的,可以删除指定ID的记录
      

  3.   

    那是你INSERT的时候就出问题了,修改INSERT才是根本的解决办法。
      

  4.   

    我用的ACCESS数据库,内容是从一个文本里读出来的,而文本内很多行是相同的,所以必须删除重复的以便减少体积,要知道数据库里可是86W条记录啊,之所以用ACCESS是因为数据库携带方便,:)
      

  5.   

    比如你要删除 aa 记录 (假设字段名称为 field)插入 aa 记录(注意, 只是一条)至临时表 temp 中
    insert into temp Select distinct * from tbl where field = aa从tbl表中删除所有 aa的记录
    delete from tbl where field = aa再复制回去
    insert into tbl select * from temp where field = aa
      

  6.   

    TO huwei001982(編程浪子) ( 你的意思是便利数据库,先删除当前记录,再插入尾部??如此循环吗?
      

  7.   

    晕, 你到底是要删除全部重复的, 还是删除指定内容重复如果是删除全部重复的, 你将我的代码后面的  where field = aa去掉就行另: 并不是遍历数据库, 是用 Sql 语句, 就上面三行就行
      

  8.   

    我要删除所有重复的,但留下一个,比如原来数据是
    aa
    bb
    cc
    aa
    删除后成了
    aa
    bb
    cc
      

  9.   

    insert into temp Select distinct * from tbldelete from tblinsert into tbl select * from tempOK
      

  10.   

    同意楼上。insert into temp Select distinct * from tbldelete * from tblinsert into tbl select * from tempOK
      

  11.   

    select distinct 字段名 form table1
    哈哈~!