中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

刪除MySQL重復數據的方法
來源:易賢網 閱讀:1122 次 日期:2015-01-20 11:00:06
溫馨提示:易賢網小編為您整理了“刪除MySQL重復數據的方法”,方便廣大網友查閱!

本文實例講述了刪除MySQL重復數據的方法。分享給大家供大家參考。具體方法如下:

項目背景

在最近做的一個linux性能采集項目中,發現線程的程序入庫很慢,再仔細定位,發現數據庫里面很多冗余數據。因為在采集中,對于同一臺設備,同一個時間點應該只有一個數據,然而,數據庫中存入了多個數據。對于如何造成了這個結果,一時沒有想清楚,但為了解決入庫慢的問題,首先要刪除冗余數據。

問題描述

數據庫的表結構很簡單,如下:

復制代碼 代碼如下:+----------------+--------------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+----------------+--------------+------+-----+---------+-------+

| id | varchar(255) | NO | PRI | NULL | |

| conf_id | varchar(255) | NO | MUL | NULL | |

| insert_time | datetime | YES | | NULL | |

| cpu_usage | float(11,2) | YES | | NULL | |

| memory_usage | float(11,2) | YES | | NULL | |

| io_usage_write | float(11,2) | YES | | NULL | |

| io_usage_read | float(11,2) | YES | | NULL | |

+----------------+--------------+------+-----+---------+-------+

查詢所有數據量

復制代碼 代碼如下:select count(*) from perf_linux;

輸出 427366

查詢所有時間點不同設備的數據量

復制代碼 代碼如下:select count(distinct conf_id, insert_time) from perf_linux ;

輸出42387

由上面的數據可以看出,數據冗余了10倍左右。

再按時間分組看一下:

復制代碼 代碼如下:select id, conf_id ,insert_time from perf_linux order by insert_time, conf_id;

輸出:

復制代碼 代碼如下:| 2a79f7cd-43a9-4c7b-adb2-316b6c04283e | 1 | 2014-12-09 15:09:14 |

| 50d6f6c2-9c8b-45fd-98fd-2be211221cfd | 1 | 2014-12-09 15:09:14 |

| 740b52e1-e868-4074-ba36-74e2634401b3 | 1 | 2014-12-09 15:09:14 |

| 8b0096a4-9e85-417b-a131-e3505ca79a9c | 1 | 2014-12-09 15:09:14 |

| 90a9e882-5220-4508-a56f-8d4ab4a7929b | 1 | 2014-12-09 15:09:14 |

| d17403ed-24a4-45e8-b51b-2a95118383d9 | 1 | 2014-12-09 15:09:14 |

| 0c2da917-579b-4080-857d-7159f38b44ac | 2 | 2014-12-09 15:09:14 |

| 263083eb-8f63-4d2b-a03f-3320aa678735 | 2 | 2014-12-09 15:09:14 |

| d6c57a38-080b-465a-a55a-beafd9daf32d | 2 | 2014-12-09 15:09:14 |

| f672227b-1fb8-4b85-880d-2cc34b02880d | 2 | 2014-12-09 15:09:14 |

| f80020fe-6cb5-48ec-beb0-4e8ebeb0ca57 | 2 | 2014-12-09 15:09:14 |

| ff633a35-824d-49ba-b78c-5bcc5df8d1cc | 2 | 2014-12-09 15:09:14 |

| 5c41e48a-abfc-4108-a00e-ca7def7d5a5a | 3 | 2014-12-09 15:09:14 |

| 60b7ab9e-c91a-4020-a6d3-7bceb1dc47c5 | 3 | 2014-12-09 15:09:14 |

| 7b6cd2b8-ac6d-43eb-8858-e15885e676c8 | 3 | 2014-12-09 15:09:14 |

| d53a3df5-08c4-4604-8fac-cb51077935f6 | 3 | 2014-12-09 15:09:14 |

| d9e4ba14-f98d-42a8-b3bc-2879d58aa797 | 3 | 2014-12-09 15:09:14 |

| f56f82f6-32a7-47f7-ae07-b13168743884 | 3 | 2014-12-09 15:09:14 |

| 076c4c1b-0028-4a9c-a8c4-de655bd6ab6b | 4 | 2014-12-09 15:09:14 |

| 2a90ad9e-11a5-4707-95e8-78491da658ad | 4 | 2014-12-09 15:09:14 |

| 3b17ad1d-e589-4b65-93a7-d61fc99b4071 | 4 | 2014-12-09 15:09:14 |

| 6988d6cf-44ef-47f7-808d-09791caf2d90 | 4 | 2014-12-09 15:09:14 |

| 8404d281-f9e5-4153-a47e-128c05386758 | 4 | 2014-12-09 15:09:14 |

| e042e310-7ff2-4e4d-8c98-71e3e4d57828 | 4 | 2014-12-09 15:09:14 |

+--------------------------------------+---------+---------------------+

由上圖可見,同一個時間點的同一個設備的數據有冗余,現在我們要把這些冗余數據去掉。

解決方法

思路是這樣的:首先應該按照conf_id和時間點來判斷,進行分組(group by)查詢,每組中再取一個就可以。分組是很簡單,但是分組怎么取一個呢?我采用了中間表的形式。

創建中間表,并把數據導入中間表

復制代碼 代碼如下:create table perf_linux_t like perf_linux;

insert into perf_linux_t select * from perf_linux;

在中間表中增加一個字段,此字段是自增長的。

復制代碼 代碼如下:ALTER TABLE `perf_linux_t`

ADD COLUMN `auto_id` INT NOT NULL AUTO_INCREMENT ,

DROP PRIMARY KEY,

ADD PRIMARY KEY (`auto_id`);

刪除無用數據

先查詢一下

復制代碼 代碼如下:select min(auto_id) as auto_id from perf_linux_t group by insert_time ;

刪除不對的數據

復制代碼 代碼如下:delete from perf_linux_t where auto_id not in (select min(auto_id) as auto_id from perf_linux_t group by insert_time);

慢著,輸出錯誤:

You can't specify target table 'perf_linux_t' for update in FROM clause

不能刪除啊,那只能再建一個中間表了。

再建中間表

復制代碼 代碼如下:create table tmp like perf_linux_t;

轉變思路,不刪除不符合的數據,而是把符合的數據存到這張新表中。

復制代碼 代碼如下:insert into tmp select * from perf_linux_t where auto_id in (select min(auto_id) as auto_id from perf_linux_t group by insert_time,conf_id );

把這張表中的無用列刪除

復制代碼 代碼如下:ALTER TABLE `tmp`

DROP COLUMN `auto_id`,

DROP PRIMARY KEY;

導回數據

刪除原來的數據

復制代碼 代碼如下:truncate table perf_linux;

插入數據

復制代碼 代碼如下:insert into perf_linux select * from tmp;

刪除中間表

復制代碼 代碼如下:drop table tmp;

drop table perf_linux_t;

總結

通過這個方法,數據變為了42387條,刪除了冗余的數據。但實際上程序的問題并沒有完全定位,還需要觀察才能定位問題。

希望本文所述對大家的mysql數據庫程序設計有所幫助。

更多信息請查看IT技術專欄

更多信息請查看數據庫
易賢網手機網站地址:刪除MySQL重復數據的方法
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
久久精品三级| 亚洲午夜日本在线观看| 在线观看视频一区二区欧美日韩| 亚洲一区二区三区激情| 欧美视频一二三区| 午夜精彩视频在线观看不卡| 国产日韩欧美夫妻视频在线观看| 久久九九热re6这里有精品| 尤物视频一区二区| 欧美三区在线| 欧美在线免费观看亚洲| 亚洲高清视频在线| 欧美视频日韩| 精品999在线播放| 欧美在线一级视频| 国产欧美日韩专区发布| 久久噜噜噜精品国产亚洲综合| 国产综合香蕉五月婷在线| 欧美在线一二三| 亚洲欧洲另类国产综合| 美国三级日本三级久久99| 欧美日韩精品免费在线观看视频| 在线播放中文一区| 99精品国产高清一区二区| 久久久视频精品| 久久免费少妇高潮久久精品99| 欧美一区在线视频| 久久gogo国模啪啪人体图| 一区二区三区av| 日韩性生活视频| 欧美午夜电影网| 国产一区二区看久久| 久久久久国产精品www| 精品福利免费观看| 日韩视频在线免费| 国产精品99久久久久久久vr | 在线精品一区| 国内久久精品视频| 国产精品五区| 久久在线视频| 国产欧美一区二区精品秋霞影院| 免播放器亚洲一区| 欧美一级理论片| 亚洲一区在线播放| 亚洲国产第一| 国产一区视频网站| 国产精品美女主播在线观看纯欲| 免费人成精品欧美精品| 久久久久久免费| 欧美一区二粉嫩精品国产一线天| 99视频国产精品免费观看| 亚洲欧洲日本mm| 亚洲韩国精品一区| 伊人一区二区三区久久精品| 国产欧美一区二区三区沐欲 | 另类春色校园亚洲| 欧美一区二区三区免费视频| 一区二区三区高清不卡| 亚洲日本久久| 亚洲精品乱码久久久久久日本蜜臀 | 中国成人亚色综合网站| 日韩午夜在线观看视频| 亚洲欧洲另类| 亚洲日本va午夜在线电影| 亚洲国产成人久久| 亚洲另类视频| 亚洲男人第一网站| 国产在线精品二区| 国产日韩欧美一二三区| 国产欧美日韩亚州综合| 国产精品嫩草99av在线| 一区二区高清在线观看| 国产女优一区| 鲁大师成人一区二区三区 | 久久久久久香蕉网| 久久久久国内| 美日韩精品免费| 欧美精品激情| 国产精品xxxav免费视频| 国产精品视频导航| 国精品一区二区三区| 亚洲第一福利视频| 99re8这里有精品热视频免费| 99国产一区| 午夜宅男久久久| 久久婷婷亚洲| 欧美日韩小视频| 国产婷婷成人久久av免费高清 | 久久精品国产亚洲高清剧情介绍| 欧美中文字幕第一页| 老牛影视一区二区三区| 欧美精品二区| 国产女主播一区| 91久久久亚洲精品| 亚洲欧美国产视频| 久久精品在线免费观看| 欧美精品一区二区三区视频| 国产精品影片在线观看| 亚洲第一在线| 亚洲欧美日韩一区二区| 免费欧美高清视频| 国产精品色一区二区三区| 狠狠综合久久av一区二区小说| 亚洲精品日韩综合观看成人91| 亚洲欧美日韩在线不卡| 美女精品网站| 国产精品一区二区三区观看| 亚洲国产欧美国产综合一区| 国产亚洲一级| 一区二区三区 在线观看视| 久久久97精品| 国产精品第三页| 亚洲人成在线播放| 久久精品综合| 国产精品国产一区二区| 亚洲风情亚aⅴ在线发布| 午夜精品久久久久久久久久久久久 | 国产精品久久久久av| 韩国成人精品a∨在线观看| 亚洲最快最全在线视频| 久久综合久久综合这里只有精品| 国产精品多人| 99成人免费视频| 欧美高清免费| 影音先锋亚洲电影| 久久精品成人一区二区三区蜜臀| 欧美系列精品| 在线一区欧美| 欧美巨乳波霸| 亚洲国产天堂网精品网站| 久久精品国内一区二区三区| 欧美亚州一区二区三区| 亚洲激情黄色| 欧美wwwwww| 亚洲国产精品精华液2区45| 久久九九国产| 国内在线观看一区二区三区| 欧美一区国产一区| 国产精品永久免费视频| 亚洲综合电影| 国产老女人精品毛片久久| 亚洲一区二区黄| 国产精品久久久免费| 亚洲手机成人高清视频| 亚洲女爱视频在线| 国产日韩欧美在线| 久久成人精品视频| 韩国女主播一区二区三区| 午夜在线视频观看日韩17c| 国产亚洲综合性久久久影院| 亚洲女人小视频在线观看| 国产精品美女午夜av| 午夜在线观看欧美| 狠色狠色综合久久| 欧美国产亚洲另类动漫| 亚洲免费观看高清完整版在线观看熊 | 亚洲人成网站在线观看播放| 欧美风情在线观看| 一本久久青青| 国产伦精品一区二区三| 久久久久www| 亚洲精品乱码久久久久久久久| 欧美巨乳在线| 小黄鸭精品aⅴ导航网站入口| 国产亚洲欧美一区二区| 免费在线亚洲| 亚洲美女在线观看| 国产精品视频内| 美女精品视频一区| 一本一本久久a久久精品综合妖精| 性做久久久久久久久| 亚洲青涩在线| 国产精品爽爽爽| 欧美国产日产韩国视频| 亚洲免费中文字幕| 亚洲欧洲日产国产网站| 国产精品久久网| 欧美电影在线播放| 亚洲欧美日韩在线| 亚洲精品国精品久久99热一| 国产欧美在线视频| 欧美人妖在线观看| 国产精品乱码久久久久久| 亚洲国产精品ⅴa在线观看| 欧美日韩久久不卡| 久久久91精品国产一区二区三区 | 在线欧美日韩国产| 国产精品第三页| 女人色偷偷aa久久天堂| 午夜精品视频在线观看一区二区| 在线欧美视频| 国产亚洲福利社区一区| 欧美日韩一区二区视频在线观看| 久久精品免视看| 亚洲一区二区三区在线看| 亚洲啪啪91| 在线成人黄色| 精品成人国产| 亚洲欧洲日本专区| 狠狠久久婷婷|