当前位置: 代码迷 >> SQL >> 用SQL剔除重复数据记录
  详细解决方案

用SQL剔除重复数据记录

热度:58   发布时间:2016-05-05 14:32:12.0
用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,比如下面的表


??--删除重复数据2

??delete?haec0.zhou_data_test?where?rowid?not?in?(??

??????????select?max(rowid)?from?haec0.zhou_data_test???

??????????group?by?name

??)?

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


  相关解决方案