mysql根据现有表创建新表
1、语法1:CREATE TABLE new_tbl LIKE orig_tbl;
1、1 根据departments表创建新表departments1 departments 表结果和表数据库如下
创建departments1如下
使用命令:
1
|
CREATE TABLE departments1 LIKE departments; |
这种语法,将从源表复制列名、数据类型、大小、非空约束以及索引和主键。而表的内容以及其它约束不会复制,新表是一张空表。
2、语法2:CREATE TABLE new_tbl [AS] SELECT {*|column,…} FROM orig_tbl;
2、1 根据departments表创建新表departments2
命令如下:
1
|
create table departments2 as select * from departments |
新表的结构由select列表决定。同时把查询返回的结果集中的行插入到目标表中。这种语法同样只能把非空约束带入到新表中。也不会复制索引,主键
3、语法3:CREATE TEMPORARY TABLE new_tbl [AS] SELECT {*|column,…} FROM orig_tbl;
3、1 根据departments表创建新表departments3
命令如下:
1
|
CREATE TEMPORARY TABLE departments3 as SELECT * FROM departments; |
新表的结构由select列表决定。同时把查询返回的结果集中的行插入到目标表中。这种语法同样只能把非空约束带入到新表中。也不会复制索引,主键