mysql基础--表复制与去重

mysql基础--表复制与去重

-- 演示自我复制

-- 创建目标表
CREATE TABLE my_copy
	(id INT,
	`name` VARCHAR(32),
	sal DOUBLE,
	job VARCHAR(32),
	deptno INT);
DESC my_copy
SELECT * FROM my_copy
	
-- 演示自我复制
-- 1.生成原始记录(查询到的结果放入)
INSERT INTO my_copy
	(id, `name`, sal, job, deptno)
	SELECT empno, ename, sal, job, deptno FROM emp;
-- 2.自我复制
INSERT INTO my_copy
	SELECT * FROM my_copy;

-- 演示去重
-- 1.创建一张表,复制表结构
CREATE TABLE my_table
	LIKE emp
DESC my_table
SELECT * FROM my_table
-- 2.复制表内容
INSERT INTO my_table
	SELECT * FROM emp;
-- 3.去重
/*
思路
(1).创建一张临时表,结构和my_table一样
(2).把my_table的记录,通过DISTINCT关键字处理后复制到临时表
(3).清除掉my_table的所有记录
(4).把临时表复制到my_table
(5).删除临时表
*/
1.
CREATE TABLE temp LIKE my_table;
2.
INSERT INTO temp SELECT DISTINCT * FROM my_table
3.
DELETE FROM my_table;
4.
INSERT INTO my_table SELECT * FROM temp
5.
DROP TABLE temp

SELECT * FROM my_table
posted @   邵泽龙  阅读(119)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示