数据库怎么剔除表里重复数据

数据库怎么剔除表里重复数据

问:sql中如何删除一个表中重复的记录?
  1. 答:sql中删除一个表中的重复记录可以采用如下步骤: 
    1、把a_dist表的记录用distinct去重,结果放到临时表中。
    select  distinct * into #temp from a_dist;
    2、把a_dist表的记录全部删除。
    delete  from a_dist;
    3、把临时表中的数据信息导进到a_dist表中,并删除临时表。
    insert  into a_dist select * from #temp;
    drop table #temp;
    扩展资料:
    SQL (结构化查询语言)是用于执行查询的语法。在数据库上执行的大部分工作都由 SQL 语句完成。SQL 语言包含用于更新、插入和删除记录的语法。
    增删改查指令构成了 SQL 的 DML 部分:
    SELECT - 从数据库表中获取数据
    UPDATE - 更新数据库表中的数据
    DELETE - 从数据库表中删除数据
    INSERT INTO - 向数据库表中插入数据
问:sql数据库中出现重复行数据,如何删除这些重复记录?
  1. 答:一般情况下,数据库去重复有以下那么三种方法:
    第一种:
    两条记录或者多条记录的每一个字段值完全相同,这种情况去重复最简单,用关键字distinct就可以去掉。例:
    SELECT DISTINCT * FROM TABLE
    第二种:
    两条记录之间之后只有部分字段的值是有重复的,但是表存在主键或者唯一性ID。如果是这种情况的话用DISTINCT是过滤不了的,这就要用到主键id的唯一性特点及group by分组。例:
    SELECT * FROM TABLE WHERE ID IN (SELECT MAX(ID) FROM TABLE GROUP BY [去除重复的字段名列表,....])
       
    第三种:
    两条记录之间之后只有部分字段的值是有重复的,但是表不存在主键或者唯一性ID。这种情况可以使用临时表,讲数据复制到临时表并添加一个自增长的ID,在删除重复数据之后再删除临时表。例:
    //创建临时表,并将数据写入到临时表
    SELECT IDENTITY(INT1,1) AS ID,* INTO NEWTABLE(临时表) FROM TABLE
    //查询不重复的数据
    SELECT * FROM NEWTABLE WHERE ID IN (SELECT MAX(ID) FROM NEWTABLE GROUP BY [去除重复的字段名列表,....])
    //删除临时表
    DROP TABLE NEWTABLE
       
  2. 答:怕用别的方法删除出错的话,可以用 去重查询,放到另一张表中,删除后再放回去啊!
    select distinct * into A from B 去重存另一张表
    delete B-- 删除B中数据
    --放回数据
    insert into B
    select * from A
    注意:分开执行!用go分开的话,有可能删除数据,但因为语句没结果而未完全删除。
  3. 答:delete from TABLE_name t1
    where t1.rowid >
    (select min(rowid) from TABLE_name t2
    where t1.name = t2.name
    group by name
    having count(name) > 1); 肯定没问题的哈
问:数据库怎么删除相同的内容
  1. 答:查询及删除重复记录的SQL语句
    1、查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断 ;
    select * from 表 where Id in (select Id from 表 group byId having count(Id) > 1)
    2、删除表中多余的重复记录,重复记录是根据单个字段(Id)来判断,只留有rowid最小的记录;
    DELETE from 表 WHERE (id) IN ( SELECT id FROM 表 GROUP BY id HAVING COUNT(id) > 1) AND ROWID NOT IN (SELECT MIN(ROWID) FROM 表 GROUP BY id HAVING COUNT(*) > 1);
    3、查找表中多余的重复记录(多个字段);
数据库怎么剔除表里重复数据
下载Doc文档

猜你喜欢