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

MySQL去重的方法整理

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

MySQL去重的方法整理

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

使用distinct查出來,然后手動一行一行刪除。

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

例如:對id字段去重

使用方法:獲取id的重復(fù)字段的值,利用相同id字段所在的行中,比較出數(shù)據(jù)不同的字段,刪除 除了最小(或最大)的字段所在的該行之外的所有重復(fù)的行。一般使用主鍵來比較,因為主鍵的值一定是唯一值,絕對不相同。

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 (……)這樣的格式,否則會報錯:

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

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

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

使用方法:和單個字段相似,一般使用主鍵來比較,因為主鍵的值一定是唯一值。

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字段的值連接起來插入到臨時表中b_tmp,這樣便可以使用【中級】的單字段的判斷刪除方法。

#將兩字段連接的值,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;

#使用【中級】的方法,或存儲過程完成去重的工作

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

例如:

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

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

操作:

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

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

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

相關(guān)文章

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

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

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

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

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

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

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

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

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

    mysql err錯誤提示You need to use --log-

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

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

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

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

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

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

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

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

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

    MySQL安裝常見報錯處理方法總結(jié)大全

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

最新評論

田林县| 靖边县| 修水县| 惠水县| 晋州市| 盐城市| 清苑县| 黎城县| 彭阳县| 永川市| 阳信县| 扎赉特旗| 岳阳市| 兴安县| 巴塘县| 龙口市| 宁陵县| 宁河县| 津市市| 宁南县| 蕲春县| 司法| 龙南县| 长子县| 偃师市| 诸城市| 平昌县| 张家港市| 宕昌县| 桂东县| 凉山| 黑水县| 民权县| 阜南县| 穆棱市| 罗田县| 准格尔旗| 溆浦县| 沙雅县| 杂多县| 河东区|