MySQL拷贝表的几种方式
1. 拷贝表结构到新表中。 (不会拷贝表中的数据)
CREATE TABLE 新表 LIKE 旧表;
或
CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2;
2. 拷贝数据到新表中。(新表不会有主键,索引)
CREATE TABLE 新表 AS ( SELECT * FROM 旧表 );
3. 真正的复制一个表。可以用下面的语句。
CREATE TABLE 新表 LIKE 旧表; INSERT INTO 新表 SELECT * FROM 旧表;
或
CREATE TABLE 新表 SELECT * FROM 旧表;
4. 操作不同的数据库。
CREATE TABLE 新表 LIKE 库1.旧表; CREATE TABLE 库2.新表 LIKE 库1.旧表;
5. 拷贝一个表中其中的一些字段。
CREATE TABLE 新表 AS ( SELECT 字段1, 字段2,... FROM 旧表 );
我们也可以拷贝一部分数据
CREATE TABLE 新表 AS
(
SELECT * FROM 旧表 WHERE LEFT(username,1) = 's'
);
复制旧表的数据到新表
(假设两个表结构一样)
INSERT INTO 新表 SELECT * FROM 旧表;
(假设两个表结构不一样)
INSERT INTO 新表
(
字段1,字段2,.......
) SELECT
字段1,字段2,......
FROM 旧表;
6. 将新建的表的字段改名。
CREATE TABLE 新表 AS ( SELECT id, username AS uname, password AS pass FROM 旧表 );
7.将表1结构复制到表2
SELECT * INTO 表2 FROM 表1 WHERE 1=2;
将表1内容全部复制到表2
SELECT * INTO 表2 FROM 表1;
8. 创建表的同时定义表中的字段信息。
CREATE TABLE 新表 ( id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY ) AS ( SELECT * FROM 旧表 );
9. 显示旧表的创建命令
show create table 旧表;
安静等阳关