当前位置:Gxlcms > mysql > sql利用另一个数据自动生成一张新表

sql利用另一个数据自动生成一张新表

时间:2021-07-01 10:21:17 帮助过:12人阅读

文章介绍了利用另一个数据自动生成一张新表,这种方法很适合用于做数据备份,因为数据结构必须一样。

Syntax #1 - Copying all columns from another table
The basic syntax is:

代码如下

CREATE TABLE new_table
AS (SELECT * FROM old_table);

For example:

代码如下

CREATE TABLE suppliers
AS (SELECT *
FROM companies
WHERE id > 1000);

这将创建一个新表,所谓的供应商,其中包括从公司表列。

如果有公司表中的记录,那么新的供应商表还包含由SELECT语句选择的记录。

语法#2 - 复制从另一个表中选定的列
基本语法是:

代码如下

CREATE TABLE new_table
AS (SELECT column_1, column2, ... column_n FROM old_table);

For example:

代码如下

CREATE TABLE suppliers
AS (SELECT id, address, city, state, zip
FROM companies
WHERE id > 1000);

这将创建一个新的表称为供应商,但新表将只包括从公司表的指定列。

同样,如果有公司表中的记录,那么新的供应商表还包含由SELECT语句选择的记录。

语法#3 - 从多个表中复制选定列

代码如下

CREATE TABLE new_table
AS (SELECT column_1, column2, ... column_n
FROM old_table_1, old_table_2, ... old_table_n);

For example:

CREATE TABLE suppliers
AS (SELECT companies.id, companies.address, categories.cat_type
FROM companies, categories
WHERE companies.id = categories.id
AND companies.id > 1000);

人气教程排行