国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專(zhuān)題視頻專(zhuān)題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專(zhuān)題1關(guān)鍵字專(zhuān)題50關(guān)鍵字專(zhuān)題500關(guān)鍵字專(zhuān)題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專(zhuān)題關(guān)鍵字專(zhuān)題tag2tag3文章專(zhuān)題文章專(zhuān)題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專(zhuān)題3
問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

Oracle數(shù)據(jù)庫(kù)中去除重復(fù)數(shù)據(jù)

來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-09 13:48:39
文檔

Oracle數(shù)據(jù)庫(kù)中去除重復(fù)數(shù)據(jù)

Oracle數(shù)據(jù)庫(kù)中去除重復(fù)數(shù)據(jù):在平時(shí)的開(kāi)發(fā)中,我們經(jīng)常遇到數(shù)據(jù)表中出現(xiàn)重復(fù)的數(shù)據(jù),那么該如何解決呢這里介紹兩種情況下的數(shù)據(jù)去重方法,一、完全重復(fù)數(shù)據(jù)去重;二、部分字段數(shù)據(jù)重復(fù)去重。 一、完全重復(fù)數(shù)據(jù)去重方法 對(duì)于表中完全重復(fù)數(shù)據(jù)去重,可以采用以下SQL語(yǔ)句。 Code CREAT
推薦度:
導(dǎo)讀Oracle數(shù)據(jù)庫(kù)中去除重復(fù)數(shù)據(jù):在平時(shí)的開(kāi)發(fā)中,我們經(jīng)常遇到數(shù)據(jù)表中出現(xiàn)重復(fù)的數(shù)據(jù),那么該如何解決呢這里介紹兩種情況下的數(shù)據(jù)去重方法,一、完全重復(fù)數(shù)據(jù)去重;二、部分字段數(shù)據(jù)重復(fù)去重。 一、完全重復(fù)數(shù)據(jù)去重方法 對(duì)于表中完全重復(fù)數(shù)據(jù)去重,可以采用以下SQL語(yǔ)句。 Code CREAT

在平時(shí)的開(kāi)發(fā)中,我們經(jīng)常遇到數(shù)據(jù)表中出現(xiàn)重復(fù)的數(shù)據(jù),那么該如何解決呢?這里介紹兩種情況下的數(shù)據(jù)去重方法,一、完全重復(fù)數(shù)據(jù)去重;二、部分字段數(shù)據(jù)重復(fù)去重。 一、完全重復(fù)數(shù)據(jù)去重方法 對(duì)于表中完全重復(fù)數(shù)據(jù)去重,可以采用以下SQL語(yǔ)句。 Code CREATETABL

  在平時(shí)的開(kāi)發(fā)中,我們經(jīng)常遇到數(shù)據(jù)表中出現(xiàn)重復(fù)的數(shù)據(jù),那么該如何解決呢?這里介紹兩種情況下的數(shù)據(jù)去重方法,一、完全重復(fù)數(shù)據(jù)去重;二、部分字段數(shù)據(jù)重復(fù)去重。

  一、完全重復(fù)數(shù)據(jù)去重方法

  對(duì)于表中完全重復(fù)數(shù)據(jù)去重,可以采用以下SQL語(yǔ)句。

  Code

  CREATETABLE"#temp"AS (SELECTDISTINCT * FROM 表名);--創(chuàng)建臨時(shí)表,并把DISTINCT 去重后的數(shù)據(jù)插入到臨時(shí)表中

  truncateTABLE 表名;--清空原表數(shù)據(jù)

  INSERTINTO 表名(SELECT * FROM"#temp");--將臨時(shí)表數(shù)據(jù)插入到原表中

  DROPTABLE"#temp";--刪除臨時(shí)表

  具體思路是,首先創(chuàng)建一個(gè)臨時(shí)表,然后將DISTINCT之后的表數(shù)據(jù)插入到這個(gè)臨時(shí)表中;然后清空原表數(shù)據(jù);再講臨時(shí)表中的數(shù)據(jù)插入到原表中;最后刪除臨時(shí)表。

  二、部分?jǐn)?shù)據(jù)去重方法

  首先查找重復(fù)數(shù)據(jù)

  select 字段1,字段2,count(*) from 表名 groupby 字段1,字段2 havingcount(*) > 1

  將上面的>號(hào)改為=號(hào)就可以查詢(xún)出沒(méi)有重復(fù)的數(shù)據(jù)了。

  想要?jiǎng)h除這些重復(fù)的數(shù)據(jù),可以使用下面語(yǔ)句進(jìn)行刪除:

  deletefrom 表名 a where 字段1,字段2 in

  (select 字段1,字段2,count(*) from 表名 groupby 字段1,字段2 havingcount(*) > 1)

  上面的語(yǔ)句非常簡(jiǎn)單,就是將查詢(xún)到的數(shù)據(jù)刪除掉。不過(guò)這種刪除執(zhí)行的效率非常低,對(duì)于大數(shù)據(jù)量來(lái)說(shuō),可能會(huì)將數(shù)據(jù)庫(kù)卡死。

  基于上述情況,可以先將查詢(xún)到的重復(fù)的數(shù)據(jù)插入到一個(gè)臨時(shí)表中,然后對(duì)進(jìn)行刪除,,這樣,執(zhí)行刪除的時(shí)候就不用再進(jìn)行一次查詢(xún)了。如下:

  CREATETABLE 臨時(shí)表 AS

  (select 字段1,字段2,count(*) from 表名 groupby 字段1,字段2 havingcount(*) > 1)

  下面就可以進(jìn)行這樣的刪除操作了:

  deletefrom 表名 a where 字段1,字段2 in (select 字段1,字段2 from 臨時(shí)表);

  先建臨時(shí)表再進(jìn)行刪除的操作要比直接用一條語(yǔ)句進(jìn)行刪除要高效得多。

  上面的語(yǔ)句會(huì)把所有重復(fù)的全都刪除,在oracle中,有個(gè)隱藏了自動(dòng)rowid,里面給每條記錄一個(gè)唯一的rowid,我們?nèi)绻氡A糇钚碌囊粭l記錄,我們就可以利用這個(gè)字段,保留重復(fù)數(shù)據(jù)中rowid最大的一條記錄就可以了。

  下面是查詢(xún)重復(fù)數(shù)據(jù)的一個(gè)例子:

  select a.rowid,a.* from 表名 a

  where a.rowid !=

  (

  selectmax(b.rowid) from 表名 b

  where a.字段1 = b.字段1 and

  a.字段2 = b.字段2

  )

  上面括號(hào)中的語(yǔ)句是查詢(xún)出重復(fù)數(shù)據(jù)中rowid最大的一條記錄。而外面就是查詢(xún)出除了rowid最大之外的其他重復(fù)的數(shù)據(jù)了。

  由此,我們要?jiǎng)h除重復(fù)數(shù)據(jù),只保留最新的一條數(shù)據(jù),就可以這樣寫(xiě)了:

  deletefrom 表名 a

  where a.rowid !=

  (

  selectmax(b.rowid) from 表名 b

  where a.字段1 = b.字段1 and

  a.字段2 = b.字段2

  )

  同理,上述代碼的執(zhí)行效率畢竟低,所以我們可以考慮建立臨時(shí)表,將需要判斷重復(fù)的字段、rowid插入臨時(shí)表中,然后刪除的時(shí)候在進(jìn)行比較。

  createtable 臨時(shí)表 as

  select a.字段1,a.字段2,MAX(a.ROWID) dataid from 正式表 a GROUPBY a.字段1,a.字段2;

  deletefrom 表名 a

  where a.rowid !=

  (

  select b.dataid from 臨時(shí)表 b

  where a.字段1 = b.字段1 and

  a.字段2 = b.字段2

  );

  commit;

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

Oracle數(shù)據(jù)庫(kù)中去除重復(fù)數(shù)據(jù)

Oracle數(shù)據(jù)庫(kù)中去除重復(fù)數(shù)據(jù):在平時(shí)的開(kāi)發(fā)中,我們經(jīng)常遇到數(shù)據(jù)表中出現(xiàn)重復(fù)的數(shù)據(jù),那么該如何解決呢這里介紹兩種情況下的數(shù)據(jù)去重方法,一、完全重復(fù)數(shù)據(jù)去重;二、部分字段數(shù)據(jù)重復(fù)去重。 一、完全重復(fù)數(shù)據(jù)去重方法 對(duì)于表中完全重復(fù)數(shù)據(jù)去重,可以采用以下SQL語(yǔ)句。 Code CREAT
推薦度:
標(biāo)簽: 刪除 去除 數(shù)據(jù)
  • 熱門(mén)焦點(diǎn)

最新推薦

猜你喜歡

熱門(mén)推薦

專(zhuān)題
Top
主站蜘蛛池模板: 国产福利一区二区三区在线视频 | 黄色a免费 | 欧美嫩交| 色在线网站免费观看 | 全黄毛片 | 国产精选免费视频 | 一区二区三区久久 | 国产美女视频黄a视频全免费网站 | 青草视频在线观看免费 | 欧美精品一区二区三区免费播放 | 亚洲另类欧美日韩 | 日本特级淫片免费看 | 欧美精品高清 | 国产精品成人一区二区 | 欧美一级色图 | 国产成人拍精品视频网 | 91在线观| 精品久久久久久久一区二区手机版 | 欧美专区在线观看 | 精品91精品91精品国产片 | 国产精品va一级二级三级 | 久久精品国产一区二区 | 一级毛片黄 | 精品日韩欧美一区二区三区 | 国产精品 视频一区 二区三区 | 又黄又爽视频在线观看 | 亚洲精品毛片久久久久久久 | 欧美日韩色图 | 欧美一区二区三区在线播放 | 成人国产一区二区 | 高清国产在线 | 国产成人综合精品一区 | 亚洲欧美天堂网 | 91在线 一区 二区三区 | 一道本一区二区三区 | 国产在线每日更新 | 国产麻豆精品免费密入口 | 国产精品成人久久久久久久 | 91久久精品国产免费一区 | 亚洲一区二区三区在线免费观看 | 亚洲一区二区三区四 |