MySQL复制表

当我们要创建一张一模一样的表的时候我们不仅可以使用 show create table+表名的方式查看建表源码的方式copy表我们还可以直接用代码copy,我总结了比较常用的三种copy表的方式

table_a表数据:

MySQL复制表

方式一:

# 方式一
CREATE TABLE table_a_copy4 LIKE table_a;         # 复制表结构创建表
INSERT INTO table_a_copy SELECT * FROM table_a;  # 复制数据并添加
# 查看表数据
SELECT * FROM table_a_copy;

MySQL复制表

# 查看表结构
SHOW CREATE TABLE table_a_copy;

MySQL复制表

 方式一copy出来的表数据与结构跟原表都是一模一样的

方式二:

# 方式二
CREATE TABLE table_a_copy2 SELECT * FROM table_a; 
# 查看表数据
SELECT * FROM table_a_copy2;

MySQL复制表

# 查看表结构
SHOW CREATE TABLE table_a_copy2;

MySQL复制表

 方式二copy出来的表数据是相同的但表结构发生了改变,主键不见了,并且默认为'0'

方式三:

CREATE TABLE table_a_copy3 SELECT a_id AS id,a_name AS nm,
age AS ag,height AS ht,weight AS wt FROM table_a WHERE a_id>3; 

# 查看表数据
SELECT * FROM table_a_copy3;

MySQL复制表

# 查看表结构
SHOW CREATE TABLE table_a_copy3;

MySQL复制表

方式三是方式二的进阶,多了改字段名与筛选

总结:

方法一通过两句sql语句可以复制出跟原表一模一样的表。方式二简洁,一句就可以复制整张表,但会改变表结构,在只关注数据做聚合报表的时候还是比较实用的。方式三是方式二的进阶,可以复制表并修改列名,其中的select语句是支持DQL(数据查询语言的)

打卡第9天,对数据库感兴趣的朋友欢迎一起讨论、交流,请多指教!

上一篇:Linux Shell脚本经典案例


下一篇:半个Vulnstack4渗透笔记