国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

幾個(gè)刪除重復(fù)記錄的SQL語句

2024-07-21 02:40:55
字體:
供稿:網(wǎng)友
在大的數(shù)據(jù)庫應(yīng)用中,經(jīng)常因?yàn)楦鞣N原因碰到重復(fù)的記錄,造成數(shù)據(jù)的冗余和維護(hù)上的不便。

1.用rowid方法

2.用group by方法

3.用distinct方法


1。用rowid方法

據(jù)據(jù)Oracle帶的rowid屬性,進(jìn)行判定,是否存在重復(fù),語句如下:
查數(shù)據(jù):
    select * from table1 a where rowid !=(select  max(rowid) 
    from table1 b where a.name1=b.name1 and a.name2=b.name2......)
刪數(shù)據(jù):
   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方法

查數(shù)據(jù):
  select count(num), max(name) from student --列出重復(fù)的記錄數(shù),并列出他的name屬性
  group by num
  having count(num) >1 --按num分組后找出表中num列重復(fù),即出現(xiàn)次數(shù)大于一次
刪數(shù)據(jù):
  delete from student
  group by num
  having count(num) >1
  這樣的話就把所有重復(fù)的都刪除了。

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

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


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 大荔县| 宜丰县| 象州县| 尖扎县| 佛学| 黄大仙区| 馆陶县| 苗栗市| 平潭县| 吴旗县| 中超| 宁武县| 汉寿县| 定兴县| 沁源县| 乌审旗| 泊头市| 明溪县| 甘孜| 共和县| 贺州市| 武汉市| 家居| 灌南县| 靖边县| 周口市| 谢通门县| 长乐市| 新邵县| 甘孜| 西宁市| 湘乡市| 布拖县| 溆浦县| 桑植县| 敖汉旗| 青岛市| 安达市| 海淀区| 松阳县| 武功县|