chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何過濾掉MySQL大批量插入的重復(fù)數(shù)據(jù)

阿銘linux ? 來源:CSDN ? 作者:CSDN ? 2021-08-27 11:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

線上庫(kù)有6個(gè)表存在重復(fù)數(shù)據(jù),其中2個(gè)表比較大,一個(gè)96萬(wàn)+、一個(gè)30萬(wàn)+,因?yàn)橹疤幚磉^相同的問題,就直接拿來了上次的Python去重腳本,腳本很簡(jiǎn)單,就是連接數(shù)據(jù)庫(kù),查出來重復(fù)數(shù)據(jù),循環(huán)刪除。

emmmm,但是這個(gè)效率嘛,實(shí)在是太低了,1秒一條,重復(fù)數(shù)據(jù)大約2萬(wàn)+,預(yù)估時(shí)間大約在8個(gè)小時(shí)左右。。。

盲目依靠前人的東西,而不去自己思考是有問題的!總?cè)ハ胫霸趺纯梢?,現(xiàn)在怎么不行了,這也是有問題的!我發(fā)現(xiàn),最近確實(shí)狀態(tài)不太對(duì),失去了探索和求知的欲望,今天算是一個(gè)警醒,頗有迷途知返的感覺。

言歸正傳,下面詳細(xì)介紹去重步驟

CREATE TABLE `animal` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(20) DEFAULT NULL, `age` int(11) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

INSERT INTO `pilipa_dds`。`student` (`id`, `name`, `age`) VALUES (‘1’, ‘cat’, ‘12’);INSERT INTO `pilipa_dds`。`student` (`id`, `name`, `age`) VALUES (‘2’, ‘dog’, ‘13’);INSERT INTO `pilipa_dds`。`student` (`id`, `name`, `age`) VALUES (‘3’, ‘camel’, ‘25’);INSERT INTO `pilipa_dds`。`student` (`id`, `name`, `age`) VALUES (‘4’, ‘cat’, ‘32’);INSERT INTO `pilipa_dds`。`student` (`id`, `name`, `age`) VALUES (‘5’, ‘dog’, ‘42’);

目標(biāo):我們要去掉name相同的數(shù)據(jù)

先看看哪些數(shù)據(jù)重復(fù)了

SELECT name,count( 1 ) FROM student GROUP BYNAME HAVING count( 1 ) 》 1;

輸出:

name count(1) cat 2 dog 2

name為cat和dog的數(shù)據(jù)重復(fù)了,每個(gè)重復(fù)的數(shù)據(jù)有兩條;

Select * From 表 Where 重復(fù)字段 In (Select 重復(fù)字段 From 表 Group By 重復(fù)字段 Having Count(1)》1)

刪除全部重復(fù)數(shù)據(jù),一條不留

直接刪除會(huì)報(bào)錯(cuò)

DELETE FROM student WHERE NAME IN ( SELECT NAME FROM student GROUP BY NAME HAVING count( 1 ) 》 1)

報(bào)錯(cuò):

1093 - You can‘t specify target table ’student‘ for update in FROM clause, Time: 0.016000s

原因是:更新這個(gè)表的同時(shí)又查詢了這個(gè)表,查詢這個(gè)表的同時(shí)又去更新了這個(gè)表,可以理解為死鎖。mysql不支持這種更新查詢同一張表的操作

解決辦法:把要更新的幾列數(shù)據(jù)查詢出來做為一個(gè)第三方表,然后篩選更新。

DELETE FROM student WHERE NAME IN ( SELECT t.NAME FROM ( SELECT NAME FROM student GROUP BY NAME HAVING count( 1 ) 》 1 ) t)

刪除表中刪除重復(fù)數(shù)據(jù),僅保留一條

在刪除之前,我們可以先查一下,我們要?jiǎng)h除的重復(fù)數(shù)據(jù)是啥樣的

SELECT * FROM student WHERE id NOT IN ( SELECT t.id FROM ( SELECT MIN( id ) AS id FROM student GROUP BY `name` ) t )

啥意思呢,就是先通過name分組,查出id最小的數(shù)據(jù),這些數(shù)據(jù)就是我們要留下的火種,那么再查詢出id不在這里面的,就是我們要?jiǎng)h除的重復(fù)數(shù)據(jù)。

開始刪除重復(fù)數(shù)據(jù),僅留一條

很簡(jiǎn)單,剛才的select換成delete即可

DELETE FROM student WHERE id NOT IN ( SELECT t.id FROM ( SELECT MIN( id ) AS id FROM student GROUP BY `name` ) t )

90萬(wàn)+的表執(zhí)行起來超級(jí)快。

(版權(quán)歸原作者所有,侵刪)

來源:telami.cn/2019/mysql-removes-duplicate-data-and-keeping-only-one/

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7325

    瀏覽量

    94301
  • python
    +關(guān)注

    關(guān)注

    57

    文章

    4867

    瀏覽量

    89811
  • 腳本
    +關(guān)注

    關(guān)注

    1

    文章

    407

    瀏覽量

    29124

原文標(biāo)題:MySQL 大批量插入,如何過濾掉重復(fù)數(shù)據(jù)?

文章出處:【微信號(hào):aming_linux,微信公眾號(hào):阿銘linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    恒訊科技解析:如何安裝MySQL并創(chuàng)建數(shù)據(jù)庫(kù)

    安裝和管理MySQL不必復(fù)雜。只需幾分鐘,你就能在Linux服務(wù)器上搭建MySQL,創(chuàng)建第一個(gè)數(shù)據(jù)庫(kù),甚至自動(dòng)化備份——同時(shí)確保數(shù)據(jù)安全有序。 什么是
    的頭像 發(fā)表于 01-14 14:25 ?82次閱讀

    工業(yè)數(shù)據(jù)中臺(tái)支持接入MySQL數(shù)據(jù)庫(kù)嗎

    可行性:MySQL數(shù)據(jù)中臺(tái)的無(wú)縫對(duì)接 數(shù)據(jù)同步與采集 工業(yè)數(shù)據(jù)中臺(tái)通過數(shù)據(jù)同步工具(如CDC變更數(shù)據(jù)
    的頭像 發(fā)表于 12-04 11:23 ?328次閱讀
    工業(yè)<b class='flag-5'>數(shù)據(jù)</b>中臺(tái)支持接入<b class='flag-5'>MySQL</b><b class='flag-5'>數(shù)據(jù)</b>庫(kù)嗎

    ulog_tag_lvl_filter_set()函數(shù)無(wú)法實(shí)現(xiàn)按照文檔說明那樣實(shí)現(xiàn)按模塊過濾,怎么解決?

    ulog_tag_lvl_filter_set()函數(shù)無(wú)法實(shí)現(xiàn)按照文檔說明那樣實(shí)現(xiàn)按模塊過濾,比如過濾掉所有drv.xxx的日志
    發(fā)表于 10-10 07:30

    在rt-thread studio環(huán)境中之前編譯成功的項(xiàng)目(1234)重命名(test)后出現(xiàn)大批量的錯(cuò)誤是什么原因造成?如何處理?

    在rt-thread studio環(huán)境中之前編譯成功的項(xiàng)目(1234)重命名(test)后出現(xiàn)大批量的錯(cuò)誤是什么原因造成?該如何處理?這很困擾,為啥重命名就能出現(xiàn)這樣的情況?
    發(fā)表于 09-17 06:58

    Silicon Labs芯科科技FG23L無(wú)線SoC現(xiàn)已全面供貨,為Sub-GHz物聯(lián)網(wǎng)應(yīng)用提供最佳性價(jià)比

    通過平衡核心性能與無(wú)與倫比的性價(jià)比,F(xiàn)G23L將Sub-GHz物聯(lián)網(wǎng)(IoT)推向更廣闊的市場(chǎng)和更大批量的應(yīng)用。
    的頭像 發(fā)表于 09-11 14:53 ?7084次閱讀
    Silicon Labs芯科科技FG23L無(wú)線SoC現(xiàn)已全面供貨,為Sub-GHz物聯(lián)網(wǎng)應(yīng)用提供最佳性價(jià)比

    邊緣計(jì)算網(wǎng)關(guān)的數(shù)據(jù)過濾功能體現(xiàn)在哪

    體現(xiàn)如下: 1. 本地數(shù)據(jù)清洗與冗余剔除 原始數(shù)據(jù)過濾 :邊緣計(jì)算網(wǎng)關(guān)在數(shù)據(jù)源頭(如傳感器、設(shè)備)附近對(duì)采集到的原始數(shù)據(jù)進(jìn)行初步清洗,剔除
    的頭像 發(fā)表于 09-11 11:23 ?654次閱讀
    邊緣計(jì)算網(wǎng)關(guān)的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>過濾</b>功能體現(xiàn)在哪

    東風(fēng)新能源車大批量簽約交付

    近期,東風(fēng)新能源車大批量簽約交付投入網(wǎng)約車市場(chǎng),攜手合作伙伴共建出行服務(wù)新標(biāo)桿,成為城市綠色出行的重要一環(huán)。
    的頭像 發(fā)表于 07-31 14:19 ?901次閱讀

    T0727J5012AHF超低剖面0805阻抗變壓器50?至12.5?

    和卷筒式兩種,是獲取和存放大批量制造的理想選擇。性能參數(shù)頻率范圍:700 MHz– 2.7 GHz阻抗比:50 Ω→ 12.5 Ω插入損耗:0.1 dB @ 25 °C;0.2 dB @ +85 °C
    發(fā)表于 07-21 09:27

    應(yīng)用案例丨一鍵測(cè)量300+工件,QM系列閃測(cè)儀批量檢測(cè)

    面對(duì)制造業(yè)大批量、高效率的尺寸檢測(cè)需求,光子精密推出了革命性產(chǎn)品——QM系列圖像尺寸測(cè)量?jī)x。憑借±1μm的超高測(cè)量精度、行業(yè)領(lǐng)先的大批量檢測(cè)能力,重新定義尺寸檢測(cè)的效率標(biāo)準(zhǔn)。
    的頭像 發(fā)表于 07-18 08:00 ?687次閱讀
    應(yīng)用案例丨一鍵測(cè)量300+工件,QM系列閃測(cè)儀<b class='flag-5'>批量</b>檢測(cè)

    批量SMT加工的“定制化”與大批量生產(chǎn)的“標(biāo)準(zhǔn)化”:差異全解析

    一站式PCBA加工廠家今天為大家講講小批量SMT加工與大批量生產(chǎn)有什么區(qū)別?小批量SMT加工與大批量生產(chǎn)差異解析。 ? 一、SMT加工的核心模式差異 1. 生產(chǎn)規(guī)模與設(shè)備配置 小
    的頭像 發(fā)表于 07-16 09:18 ?913次閱讀

    MySQL數(shù)據(jù)備份與恢復(fù)策略

    數(shù)據(jù)是企業(yè)的核心資產(chǎn),MySQL作為主流的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),其數(shù)據(jù)的安全性和可靠性至關(guān)重要。本文將深入探討MySQL
    的頭像 發(fā)表于 07-14 11:11 ?625次閱讀

    企業(yè)級(jí)MySQL數(shù)據(jù)庫(kù)管理指南

    在當(dāng)今數(shù)字化時(shí)代,MySQL作為全球最受歡迎的開源關(guān)系型數(shù)據(jù)庫(kù),承載著企業(yè)核心業(yè)務(wù)數(shù)據(jù)的存儲(chǔ)與處理。作為數(shù)據(jù)庫(kù)管理員(DBA),掌握MySQL
    的頭像 發(fā)表于 07-09 09:50 ?636次閱讀

    MySQL數(shù)據(jù)庫(kù)是什么

    MySQL數(shù)據(jù)庫(kù)是一種 開源的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS) ,由瑞典MySQL AB公司開發(fā),后被Oracle公司收購(gòu)。它通過結(jié)構(gòu)化查詢語(yǔ)言(SQL)進(jìn)行
    的頭像 發(fā)表于 05-23 09:18 ?1068次閱讀

    CYUSB3014在FPGA發(fā)送的每?jī)蓭行?b class='flag-5'>數(shù)據(jù)之間,會(huì)出現(xiàn)很多冗余的重復(fù)數(shù)據(jù),問題出在哪里?

    使用BeginDataXfer(), WaitForXfer() 和 FinishDataXfer()的方法異步接收數(shù)據(jù)。目前C#端的吞吐量大于FPGA數(shù)據(jù)的發(fā)送速率,我們發(fā)現(xiàn)在FPGA發(fā)送的每?jī)蓭行?b class='flag-5'>數(shù)據(jù)之間,會(huì)出現(xiàn)很多冗余的
    發(fā)表于 05-20 07:36

    納祥科技NX8615,帶SPI接口的獨(dú)立局域網(wǎng)(CAN)控制器芯片,功能覆蓋MCP2515

    NX8615 具有 2 個(gè)接收掩碼和 6 個(gè)接收過濾寄存器,用于過濾掉不需要的消息,從而減少了主機(jī)MCU 的負(fù)載。NX8615與 MCU的連接是通過工業(yè)標(biāo)準(zhǔn) SPI 接口來實(shí)現(xiàn)的。 NX8615
    的頭像 發(fā)表于 02-05 17:29 ?974次閱讀
    納祥科技NX8615,帶SPI接口的獨(dú)立局域網(wǎng)(CAN)控制器芯片,功能覆蓋MCP2515