最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL去重的方法整理

 更新時(shí)間:2017年07月04日 14:52:33   投稿:lqh  
這篇文章主要介紹了MySQL去重的方法整理的相關(guān)資料,需要的朋友可以參考下

MySQL去重的方法整理

【初級(jí)】有極少的重復(fù)行

使用distinct查出來,然后手動(dòng)一行一行刪除。

【中級(jí)】按照單個(gè)字段的重復(fù)去重

例如:對(duì)id字段去重

使用方法:獲取id的重復(fù)字段的值,利用相同id字段所在的行中,比較出數(shù)據(jù)不同的字段,刪除 除了最?。ɑ蜃畲螅┑淖侄嗡诘脑撔兄獾乃兄貜?fù)的行。一般使用主鍵來比較,因?yàn)橹麈I的值一定是唯一值,絕對(duì)不相同。

id  name

1    a

1    b

2    c

2    a

3    c

結(jié)果:

id  name

1    a 

2    a

操作:

delete from a_tmp 

where id in (select * from (select b.id from a_tmp b group by b.id having count(b.id) >1) bb) 

and name not in (select * from (select min(a.name) from a_tmp a GROUP BY a.id having count(a.id) >1) aa);

注意:

上述加粗并綠色的字,必須加別名,必須使用select * from (……)這樣的格式,否則會(huì)報(bào)錯(cuò):

[Err] 1093 - You can't specify target table 'a_tmp' for update in FROM clause

【高級(jí)】按多個(gè)字段的重復(fù)來去重

例如:對(duì)id,name相同的去重,即:對(duì)id,name都相同的算作重復(fù)行,對(duì)id相同而name不同的算作不重復(fù)行

使用方法:和單個(gè)字段相似,一般使用主鍵來比較,因?yàn)橹麈I的值一定是唯一值。

id  name  rowid

1  a      1

1  a      2

1  b      3

2  b      4

2  b      5

3  c      6

3  d     7

結(jié)果:

id  name  rowid

1  a      1 

1  b      3

2  b      4

3  c      6

3  d     7

操作:

第一種:

delete from a_tmp 

where (id,name) in (select * from (select b.id,b.name from a_tmp b group by b.id,b.name having count(b.id) >1) bb) 

and rowid not in (select * from (select min(a.rowid) from a_tmp a group by a.id,a.name having count(a.id) >1) aa);

第二種:

將id和name字段的值連接起來插入到臨時(shí)表中b_tmp,這樣便可以使用【中級(jí)】的單字段的判斷刪除方法。

#將兩字段連接的值,a_tmp表中唯一值的字段插入b_tmp表

insert into b_tmp 

 select concat(id,name),rowid from a_tmp;

#查出需要留下來的行

select id_name,max(rowid)

 from b_tmp 

 group by id_name

 having count(id_name)>1;

#使用【中級(jí)】的方法,或存儲(chǔ)過程完成去重的工作

 【終極】每行都有兩份一樣的數(shù)據(jù)

例如:

使用方法:對(duì)于整行的數(shù)據(jù)都一樣,是沒辦法使用SQL語句刪除的,因?yàn)闆]有可以使用的條件限制來留下一行刪除所有與其相同的行。沒有不同的字段可以自己創(chuàng)造不同的字段,即:添加一個(gè)字段,設(shè)為自增長(zhǎng),并設(shè)為主鍵,它會(huì)自動(dòng)添加上值。

id  name

1   a

1   a

1   b

1   b

2   c

2   c

3   c

3   c

結(jié)果:

id  name   rowid

1   a       1

1   b       3

2   c       5

3   c       7

操作:

添加一個(gè)自增長(zhǎng)的字段,并暫時(shí)設(shè)為主鍵。

使用上面【中級(jí)】和【高級(jí)】的方法操作。

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • 解決mysql登錄錯(cuò)誤:''Access denied for user ''root''@''localhost''

    解決mysql登錄錯(cuò)誤:''Access denied for user ''root''@''localhost''

    這篇文章主要介紹了mysql登錄錯(cuò)誤:'Access denied for user 'root'@'localhost',本文給出了操作過程及注意事項(xiàng),需要的朋友可以參考下
    2019-11-11
  • 最新mysql 5.7.23安裝配置圖文教程

    最新mysql 5.7.23安裝配置圖文教程

    這篇文章主要為大家詳細(xì)介紹了最新 mysql 5.7.23 安裝配置圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • Linux系統(tǒng)每日定時(shí)備份mysql數(shù)據(jù)的方法步驟

    Linux系統(tǒng)每日定時(shí)備份mysql數(shù)據(jù)的方法步驟

    這篇文章主要介紹了Linux系統(tǒng)每日定時(shí)備份mysql數(shù)據(jù)的方法步驟,包括創(chuàng)建文件夾、編寫腳本、設(shè)置定時(shí)任務(wù)和測(cè)試腳本,詳細(xì)步驟涵蓋從文件夾創(chuàng)建到腳本執(zhí)行的全過程,幫助用戶實(shí)現(xiàn)數(shù)據(jù)庫的自動(dòng)備份,需要的朋友可以參考下
    2024-11-11
  • mysql索引失效的幾種情況分析

    mysql索引失效的幾種情況分析

    這篇文章主要給大家介紹了關(guān)于mysql索引失效的情況,文中通過圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • mysql err錯(cuò)誤提示You need to use --log-bin to make --binlog-format work.

    mysql err錯(cuò)誤提示You need to use --log-

    今天在檢查mysql服務(wù)器錯(cuò)誤日志的時(shí)候發(fā)現(xiàn)You need to use --log-bin to make --binlog-format work,通過如下方法解決了特分享一下
    2023-06-06
  • 連接遠(yuǎn)程mysql數(shù)據(jù)庫失敗常見原因及解決方案

    連接遠(yuǎn)程mysql數(shù)據(jù)庫失敗常見原因及解決方案

    這篇文章主要介紹了連接遠(yuǎn)程mysql數(shù)據(jù)庫失敗常見原因及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • MySQL使用mysqldump實(shí)現(xiàn)數(shù)據(jù)完全備份

    MySQL使用mysqldump實(shí)現(xiàn)數(shù)據(jù)完全備份

    mysqldump是MySQL自帶的備份工具,可方便實(shí)現(xiàn)對(duì)MySQL的備份,也可以將指定的庫、表導(dǎo)出為SQL腳本,下面小編就來教大家如何使用mysqldump實(shí)現(xiàn)數(shù)據(jù)完全備份吧
    2023-07-07
  • 快速解決mysql導(dǎo)數(shù)據(jù)時(shí),格式不對(duì)、導(dǎo)入慢、丟數(shù)據(jù)的問題

    快速解決mysql導(dǎo)數(shù)據(jù)時(shí),格式不對(duì)、導(dǎo)入慢、丟數(shù)據(jù)的問題

    這篇文章主要介紹了快速解決mysql導(dǎo)數(shù)據(jù)時(shí),格式不對(duì)、導(dǎo)入慢、丟數(shù)據(jù)的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • Mysql鎖內(nèi)部實(shí)現(xiàn)機(jī)制之C源碼解析

    Mysql鎖內(nèi)部實(shí)現(xiàn)機(jī)制之C源碼解析

    數(shù)據(jù)庫之所以要加鎖,因?yàn)閿?shù)據(jù)庫是一個(gè)多用戶使用的共享資源。當(dāng)多個(gè)用戶并發(fā)地存取數(shù)據(jù)時(shí),在數(shù)據(jù)庫中就會(huì)產(chǎn)生多個(gè)事務(wù)同時(shí)存取同一數(shù)據(jù)的情況。若對(duì)并發(fā)操作不加控制就可能會(huì)讀取和存儲(chǔ)不正確的數(shù)據(jù),破壞數(shù)據(jù)庫的一致性
    2022-08-08
  • MySQL安裝常見報(bào)錯(cuò)處理方法總結(jié)大全

    MySQL安裝常見報(bào)錯(cuò)處理方法總結(jié)大全

    MySQL數(shù)據(jù)庫在安裝或卸載的過程中,常常會(huì)出現(xiàn)一些錯(cuò)誤,這是件讓我們頭疼的事,下面這篇文章主要給大家介紹了關(guān)于MySQL安裝常見報(bào)錯(cuò)處理方法的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07

最新評(píng)論

兰溪市| 林州市| 衡东县| 青海省| 全州县| 通化县| 沛县| 清新县| 横山县| 同德县| 文成县| 大田县| 惠安县| 沛县| 彩票| 清水县| 会泽县| 屏东市| 军事| 安多县| 旬邑县| 甘洛县| 淮安市| 军事| 东兴市| 遂昌县| 富川| 昭通市| 永新县| 务川| 大冶市| 正定县| 化州市| 承德市| 玉林市| 晋州市| 光泽县| 武定县| 磐安县| 舞钢市| 堆龙德庆县|