日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

Mysql中如何刪除表重復(fù)數(shù)據(jù)

瀏覽:159日期:2023-06-08 19:37:37
目錄Mysql刪除表重復(fù)數(shù)據(jù)表里存在唯一主鍵沒有主鍵時(shí)刪除重復(fù)數(shù)據(jù)Mysql刪除表中重復(fù)數(shù)據(jù)并保留一條準(zhǔn)備一張表 用的是mysql8 大家自行更改創(chuàng)建表并添加四條相同的數(shù)據(jù)總結(jié)Mysql刪除表重復(fù)數(shù)據(jù)表里存在唯一主鍵

根據(jù)多個(gè)字段刪除重復(fù)數(shù)據(jù),只保留一條數(shù)據(jù)

DELETEFROMtable_name WHERE(字段1, 字段2) IN (SELECTt.字段1,t.字段2FROM(SELECT字段1,字段2FROMtable_name GROUP BY字段1,字段2HAVINGcount(1) > 1) t)AND id NOT IN (SELECTdt.idFROM(SELECTmin(id) AS idFROMtable_name GROUP BY字段1,字段2HAVINGcount(1) > 1) dt)沒有主鍵時(shí)刪除重復(fù)數(shù)據(jù)

1、創(chuàng)建新表

①創(chuàng)建一個(gè)新表與目標(biāo)表結(jié)構(gòu)字段保持一致

create table new_table_temp

②將過濾查詢的統(tǒng)計(jì)的數(shù)據(jù)寫入到新表

insert into new_table_temp

③將舊表table_name 刪除

delete from table_name?

④將創(chuàng)建的新表名稱修改為舊表名稱

2、添加字段

①表結(jié)構(gòu)添加一個(gè)自增且唯一字段

②按照存在唯一主鍵進(jìn)行刪除重復(fù)數(shù)據(jù)

③刪除添加的自增字段

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

最近有個(gè)需求,給角色添加菜單權(quán)限,這是一個(gè)role_menu 表。

里面存放的是角色id和菜單id,是批量給一種類型角色添加,但有可能角色人為添加過,因?yàn)閿?shù)據(jù)量還是比較大的,如果先查詢這個(gè)有沒有添加過再添加會很耗時(shí),而統(tǒng)一不管有沒有添加過一并添加則很快,這就需要后續(xù)給重復(fù)數(shù)據(jù)給刪除掉,于是有了今天的分享。

我這里只做一個(gè)列子,工作代碼安全底線大家謹(jǐn)記哈。

準(zhǔn)備一張表 用的是mysql8 大家自行更改/* Navicat Premium Data Transfer Source Server : localmysql Source Server Type : MySQL Source Server Version : 80030 Source Host : localhost:3306 Source Schema : nie_db Target Server Type : MySQL Target Server Version : 80030 File Encoding : 65001 Date: 17/08/2022 10:49:41*/SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;-- ------------------------------ Table structure for message-- ----------------------------DROP TABLE IF EXISTS `message`;CREATE TABLE `message` ( `id` bigint(0) NOT NULL, `message_title` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `message_context` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `send_peo` bigint(0) NULL DEFAULT NULL, `receive_peo` bigint(0) NULL DEFAULT NULL, `scope` int(0) NULL DEFAULT 0, `del_flag` tinyint(0) NULL DEFAULT 0, `create_time` datetime(0) NULL DEFAULT NULL, `creator` tinyint(0) NULL DEFAULT NULL, `update_time` datetime(0) NULL DEFAULT NULL, PRIMARY KEY (`id`) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;-- ------------------------------ Records of message-- ----------------------------INSERT INTO `message` VALUES (1, '測試消息', '消息內(nèi)容', 23, 1231, 0, 0, '2022-08-17 10:39:51', 3, '2022-08-17 10:40:00');INSERT INTO `message` VALUES (2, '測試消息', '消息內(nèi)容', 23, 1231, 0, 0, '2022-08-17 10:39:51', 3, '2022-08-17 10:40:00');INSERT INTO `message` VALUES (3, '測試消息', '消息內(nèi)容', 23, 1231, 0, 0, '2022-08-17 10:39:51', 3, '2022-08-17 10:40:00');INSERT INTO `message` VALUES (4, '測試消息', '消息內(nèi)容', 23, 1231, 0, 0, '2022-08-17 10:39:51', 3, '2022-08-17 10:40:00');SET FOREIGN_KEY_CHECKS = 1;創(chuàng)建表并添加四條相同的數(shù)據(jù)

接下來是我們這次的重頭,我封裝了一個(gè)存儲過程,具體的邏輯都在注釋里了,你也可以分析然后單獨(dú)拿出來分批次執(zhí)行sql

CREATE DEFINER=`root`@`localhost` PROCEDURE `remove`()BEGINDECLARE count_all INT DEFAULT 0;DECLARE count_copy INT DEFAULT 1;-- 創(chuàng)建一個(gè)臨時(shí)復(fù)制表,并將目標(biāo)表數(shù)據(jù)復(fù)制進(jìn)來DROP TABLE if exists message_01 ;create TEMPORARY TABLE message_01 (SELECT * FROM message);-- 查詢?nèi)ブ睾髮?shí)際條數(shù) 并賦值給我們的變量 去重根據(jù)實(shí)際需求更改GROUP BY 后面條件SELECT COUNT(1) into count_all from (select COUNT(1) FROM message WHERE del_flag = 0 GROUP BY message_title,message_context) t ;/*刪除復(fù)制表的重復(fù)數(shù)據(jù)并保留一條 保留哪條數(shù)據(jù)可以自己根據(jù)條件調(diào)節(jié),比如最小id等等,就是條件問題 還有就是去重根據(jù)實(shí)際需求更改GROUP BY 后面條件這里如果使用了邏輯刪除,有需要保留數(shù)據(jù)的可以改成修改邏輯刪除字段*/DELETE FROM message_01 WHERE ID NOT IN (select t.id FROM (select MAX(id) as id FROM message WHERE del_flag = 0 GROUP BY message_title,message_context) t);-- 再次不去重查詢 如結(jié)果和查詢結(jié)果一樣則操作正確且完整select COUNT(1) INTO count_copy FROM message_01 WHERE del_flag = 0 ;-- 進(jìn)行最后兩次查詢結(jié)果比對IF count_all = count_copy THENTRUNCATE message;INSERT INTO message (SELECT * FROM message_01);SELECT 'success';ELSE SELECT '改造失敗',count_all AS '原表?xiàng)l數(shù)',count_copy AS '復(fù)制表刪除重復(fù)數(shù)據(jù)后統(tǒng)計(jì)的條數(shù)';END IF;END

另外創(chuàng)建存儲過程,就是再函數(shù)那里右鍵 -》過程-》輸入名字-》完成 ,你也可以百度下怎么創(chuàng)建的,我這里就不說太多啦。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: MySQL 數(shù)據(jù)庫
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
一区在线视频观看| 亚洲我射av| 国产精品一区二区99| 久久国产成人| 欧美综合国产| 亚洲激情不卡| 日韩视频在线一区二区三区| 国产精品99一区二区三区| 国产精品蜜月aⅴ在线| 欧美日韩亚洲国产精品| 日本久久一区| 国产亚洲精品美女久久久久久久久久| 日韩精品久久理论片| 日本免费在线视频不卡一不卡二| 婷婷精品久久久久久久久久不卡| 亚洲不卡视频| 欧美日韩18| 欧美一区二区三区免费看| 久久激情综合网| 国产极品模特精品一二| 精品一区二区三区视频在线播放| 国产一区二区三区久久久久久久久| 国产一区二区三区精品在线观看| 久久久久久自在自线| 午夜精品久久久久久久久久蜜桃| 国精品一区二区| 免费一区二区视频| 91精品国产自产观看在线| 国产精品白丝一区二区三区| 成人午夜在线| 久久久久久久久久久妇女 | 国产精品天天看天天狠| 久久三级中文| 欧洲在线一区| 91九色精品| 玖玖玖国产精品| 日韩激情av在线| 久久99免费视频| 日韩欧美二区| 亚洲欧美激情诱惑| 欧美久久亚洲| 亚洲国产福利| 在线视频日韩| 国产欧美日韩精品一区二区免费 | 日韩一区自拍| 久久高清免费观看| 欧美三区不卡| 日韩免费视频| 亚洲aa在线| 水蜜桃久久夜色精品一区| 国产综合色产| 7m精品国产导航在线| 欧美三区四区| 婷婷综合成人| 国产精品国产三级国产在线观看| 久久精品高清| 日韩高清不卡一区| 色婷婷色综合| 午夜亚洲一区| 国产精品亚洲产品| 亚洲小说欧美另类婷婷| 欧美一区免费| 91精品一区二区三区综合| 亚洲欧美在线综合| 国产精品久久久久久久久久10秀| 在线观看免费一区二区| 国产视频一区二区在线播放| 今天的高清视频免费播放成人| 视频精品一区| 日本欧美不卡| 日韩成人在线看| 亚洲天堂成人| 美女精品一区二区| 91久久视频| 美女国产精品久久久| 日韩制服丝袜先锋影音| 国产一区二区三区天码| 亚洲精品乱码久久久久久蜜桃麻豆 | 日韩不卡在线| 欧美精品日日操| 国产日产高清欧美一区二区三区| 91精品国产91久久久久久黑人| 国产欧美视频在线| 国产精品美女| 日本一区二区免费高清| 亚洲精选成人| 国产福利片在线观看| 亚洲久久视频| 欧洲亚洲一区二区三区| 国产精品超碰| 无码日韩精品一区二区免费| 国产综合亚洲精品一区二| 久久亚洲黄色| 日本亚洲三级在线| 在线一区免费| 亚洲人成在线网站| 国产美女视频一区二区| 在线免费观看亚洲| 激情久久中文字幕| 国产一区二区三区视频在线| 国产调教一区二区三区| 免费日韩av片| 欧美日韩在线播放视频| 国产一区二区三区四区| 国产精品亚洲综合在线观看| 亚洲精品影院在线观看| 快she精品国产999| 黑丝一区二区| 欧美不卡高清一区二区三区| 精品高清久久| 免费亚洲婷婷| 国产精品嫩模av在线| 亚州av日韩av| 亚洲青青久久| 三级欧美在线一区| 欧美专区在线| 99热精品在线观看| 久久久精品五月天| 风间由美中文字幕在线看视频国产欧美| 国产日产一区| 日本欧美一区二区在线观看| 亚洲欧美专区| 少妇精品久久久一区二区三区| 蜜臀av一区二区在线免费观看 | 夜夜嗨一区二区| 91精品1区| 亚洲婷婷免费| 欧美精选一区二区三区| 精品在线91| 欧美精品一区二区久久| 成人午夜国产| 婷婷成人在线| 九九综合九九| 国产精品三上| 中文字幕一区二区精品区| 亚洲精品乱码久久久久久蜜桃麻豆| 久久xxxx| 亚洲精品乱码| 久久激情五月婷婷| 国产精品啊v在线| 久久精品系列| 国产成人精品一区二区三区免费| 精品一区二区三区的国产在线观看| 精品视频一二| 超碰成人av| 欧美日韩免费观看视频| 久久国产电影| av不卡在线看| 日本中文字幕不卡| 国产欧美日韩一区二区三区四区 | 欧美一级全黄| 久久不见久久见免费视频7 | 欧美~级网站不卡| 亚洲一区二区成人| 中文精品电影| 欧美色综合网| 国产一区二区三区久久 | 麻豆一区二区99久久久久| 精品国产99| 日韩网站中文字幕| 欧美成人日韩| 日韩一级网站| 日韩亚洲精品在线观看| 国产精品天堂蜜av在线播放| 国产 日韩 欧美 综合 一区| 欧美日韩在线二区| 蜜桃伊人久久| 国产精品videossex| 人人草在线视频| 黄色在线一区| 日本免费新一区视频| 国产一区日韩| 欧美精品一区二区三区精品| 日本91福利区| 国产不卡精品| 伊人成人网在线看| 亚洲精品麻豆| 久久精品一区二区三区中文字幕| 日韩精品诱惑一区?区三区| 免播放器亚洲| 麻豆成人av在线| 91精品综合| 日本久久一区| 午夜欧美巨大性欧美巨大| 亚洲精选久久| 日韩欧美在线中字| 午夜电影一区| 欧美日韩国产v| 日韩一区二区三区高清在线观看| 国产精品成人a在线观看| 丝袜美腿成人在线| 国产麻豆一区| 影视先锋久久| 国产日韩欧美一区二区三区在线观看| 亚洲黄色中文字幕| 一二三区精品| 中文字幕在线看片| 日韩一区网站| 成人午夜国产| 国产欧美88|