用SQL删除重复数据记录

 

              用SQL删除重复数据记录

例子:

  create table zhou_data_test

  ( id varchar2(10),name varchar2(10),type varchar2(10));

 

  select * from haec0.zhou_data_test t;


现在只想保存 NAME 字段中为aaaa 的一行记录,本表中的三行,只要保存一条数据行即可。

方法一:

  --删除重复数据

  delete haec0.zhou_data_test where id not in (  

          select max(id) from haec0.zhou_data_test   

          group by name

  )  

这里是根据ID 进行删除的,如果要删除表中没有主键id,比如下面的表


用SQL删除重复数据记录

  --删除重复数据2

  delete haec0.zhou_data_test where rowid not in (  

          select max(rowid) from haec0.zhou_data_test   

          group by name

  ) 

在这里采用rowid来进行删除。删除后的数据如下所示:


你可能感兴趣的:(sql,数据库,删除重复数据)