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 @ 2022-03-24 18:47  邵泽龙  阅读(128)  评论(0)    收藏  举报