SQL

SQL 知识量:22 - 44 - 129

15.2 复制表><

用一个表复制新表- 15.2.1 -

有一种数据插入不使用insert语句,它可以完成由一个已经存在的表,创建并复制内容到一个新表。这个语句就是select into语句。

例如:根据people表,复制一个名为person的新表。SQL语句为:

select * into person from people;

DB2不支持该复制语句,而对于MySQL、Oracle和SQLite等DBMS来说,语法上则存在差别,相应的SQL语句应修改为:

create table person as select * from people;

复制后,DBMS将创建一个与people表内容结构完全一致的新表person,查询表person的结果为:

+----+----------+---------+--------+
| id | realName | realAge | sex    |
+----+----------+---------+--------+
|  1 | Susan    |      12 | female |
|  2 | Jame     |      12 | male   |
|  3 | Bob      |      12 | male   |
|  4 | Robot    |      12 | male   |
|  5 | Jen      |      12 | female |
|  6 | Toney    |      12 | male   |
|  8 | Alice    |      12 | female |
|  9 | Bonnie   |      12 | male   |
| 10 | Ella     |      12 | female |
| 11 | Bill     |      15 | male   |
| 12 | Limon    |      14 | male   |
| 13 | Soen     |      16 | male   |
+----+----------+---------+--------+

使用复制语句时,需要知道的是:

  • 任何select选项和子句都可以在复制时使用。

  • 可以利用联结从多个表中插入数据到新表中。

  • 不管从多少个表中检索数据,数据都只能插入到一个(新)表中。