校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > MySQL數據表合并去重的簡單實現方法

MySQL數據表合并去重的簡單實現方法

熱門標簽:400電話申請廠家現貨 百度地圖標注要什么軟件 天津公司外呼系統軟件 中國地圖標注公司 昌德訊外呼系統 電話機器人的價格多少錢一個月 徐涇鎮騰訊地圖標注 自己做地圖標注需要些什么 福建外呼電銷機器人加盟

場景:

爬取的數據生成數據表,結構與另一個主表相同,需要進行合并+去重

解決:(直接舉例)

首先創建兩個表pep,pep2,其中pep是主表

CREATE TABLE IF NOT EXISTS `pep/pep2`(
`id` INT UNSIGNED AUTO_INCREMENT,
`no` VARCHAR(100) NOT NULL,
PRIMARY KEY ( `id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

然后向pep中插入兩條數據,pep2中插入一條與pep中相同的一條數據

insert into pep(no) values('abc');
insert into pep(no) values('caa');

insert into pep2(no) values('abc');

將pep2的數據插入pep中

insert into pep (no) select no from pep2;

分組去重創建新的臨時表tmp

create table tmp select id,no from pep group by no;

注意:創建完這個表的id字段類型已經不是主鍵自增

 可能也會報錯
 ```Syntax error or access violation: 1055 Expression #1 of SELECT 
 list is not in GROUP BY clause and contains nonaggregated 
 column 'XXX.Y.ZZZZ' which is not functionally dependent on 
 columns in GROUP BY clause; this is incompatible with
 sql_mode=only_full_group_by
 ```
 解決:執行以下兩個命令:
 ```
 mysql> set global sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
 
 mysql> set session sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
 ```

刪除pep表,并將tmp表重命名為pep

drop table pep;
alter table tmp rename to pep;

查看desc結構和select * from pep發現id的字段類型變了,這里需要改回原來的類型;

alter table pep add primary key (id);
alter table pep modify id int auto_increment;

還有可以使用join來做去重,更快的還可以添加一個字段(可以是幾個字段+起來的的md5值),給這個字段創建一個唯一索引unique,以后插入數據的時候,自動回過濾掉重復的數據。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • MySQL 常見的數據表設計誤區匯總
  • MySQL數據表分區策略及優缺點分析
  • MySQL高級特性——數據表分區的概念及機制詳解
  • MySQL如何構建數據表索引
  • MySQL 索引和數據表該如何維護
  • Mysql刪除數據以及數據表的方法實例
  • MySQL創建數據表時設定引擎MyISAM/InnoDB操作
  • 刪除mysql數據表如何操作
  • 關于MYSQL 你需要知道的數據類型和操作數據表
  • MySQL創建數據表并建立主外鍵關系詳解
  • MySQL 如何設計統計數據表

標簽:昌都 陜西 荊門 北京 黔西 梅河口 鄂爾多斯 駐馬店

巨人網絡通訊聲明:本文標題《MySQL數據表合并去重的簡單實現方法》,本文關鍵詞  MySQL,數據表,合并,去,重的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL數據表合并去重的簡單實現方法》相關的同類信息!
  • 本頁收集關于MySQL數據表合并去重的簡單實現方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 五原县| 土默特右旗| 莆田市| 锡林郭勒盟| 馆陶县| 耒阳市| 永昌县| 承德市| 广平县| 达日县| 武乡县| 旅游| 防城港市| 英德市| 静乐县| 龙里县| 荔浦县| 隆化县| 洞口县| 随州市| 博兴县| 浮梁县| 清苑县| 克拉玛依市| 阿拉善盟| 尚志市| 克山县| 苏尼特左旗| 诏安县| 曲麻莱县| 白沙| 湘阴县| 孟连| 东源县| 耒阳市| 临颍县| 江阴市| 瑞安市| 会东县| 额敏县| 会昌县|