日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

几个删除重复记录的SQL语句

發布時間:2023/12/10 数据库 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 几个删除重复记录的SQL语句 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

幾個刪除重復記錄的SQL語句

在大的數據庫應用中,經常因為各種原因遇到重復的記錄,造成數據的冗余和維護上的不便。

1.用rowid方法

2.用group by方法

3.用distinct方法

1。用rowid方法

據據oracle帶的rowid屬性,進行判斷,是否存在重復,語句如下:
查數據:
??? select * from table1 a where rowid !=(select? max(rowid)?
??? from table1 b where a.name1=b.name1 and a.name2=b.name2......)
刪數據:
?? delete? from table1 a where rowid !=(select? max(rowid)?
??? from table1 b where a.name1=b.name1 and a.name2=b.name2......)

2.group by方法

查數據:
  select count(num), max(name) from student --列出重復的記錄數,并列出他的name屬性
  group by num
  having count(num) >1 --按num分組后找出表中num列重復,即出現次數大于一次
刪數據:
  delete
from student
  group by num
  having count(num) >1

  這樣的話就把所有重復的都刪除了。

3.用distinct方法 -對于小的表比較有用

create table table_new as? select distinct *? from table1 minux
truncate table table1;
insert into table1 select * from table_new;

轉載于:https://www.cnblogs.com/surffish/archive/2005/10/25/261342.html

總結

以上是生活随笔為你收集整理的几个删除重复记录的SQL语句的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。