MySQL SELECT INTO 相当于什么?
SELECT INTO 相当于 CREATE TABLE AS SELECT 语句。其语法如下 –
CREATE TABLE yourNewTableName AS SELECT *FROM yourTableName;
为了理解上述概念,让我们创建一张表。创建表的查询语句如下 –
mysql> create table selectIntoEquivalentDemo
-> (
-> ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> ClientName varchar(20),
-> ClientAge int
-> );
Query OK, 0 rows affected (0.71 sec)
使用 INSERT 语句向表中插入一些记录。查询语句如下 –
mysql> insert into selectIntoEquivalentDemo(ClientName,ClientAge) values('Larry',34);
Query OK, 1 row affected (0.13 sec)
mysql> insert into selectIntoEquivalentDemo(ClientName,ClientAge) values('Maxwell',44);
Query OK, 1 row affected (0.06 sec)
mysql> insert into selectIntoEquivalentDemo(ClientName,ClientAge) values('Bob',38);
Query OK, 1 row affected (0.07 sec)
mysql> insert into selectIntoEquivalentDemo(ClientName,ClientAge) values('David',39);
Query OK, 1 row affected (0.09 sec)
使用 SELECT 语句显示表中的所有记录。查询语句如下 –
mysql> select *from selectIntoEquivalentDemo
输出结果如下 –
+----------+------------+-----------+
| ClientId | ClientName | ClientAge |
+----------+------------+-----------+
| 1 | Larry | 34 |
| 2 | Maxwell | 44 |
| 3 | Bob | 38 |
| 4 | David | 39 |
+----------+------------+-----------+
4 rows in set (0.00 sec)
下面是 MySQL 中 SELECT INTO 相当于的查询 –
mysql> create table Client_information AS select *from selectIntoEquivalentDemo;
Query OK, 4 rows affected (0.57 sec)
Records: 4 Duplicates: 0 Warnings: 0
现在,让我们从新表中检查表记录。查询语句如下 –
mysql> select *from Client_information;
输出结果如下 –
+----------+------------+-----------+
| ClientId | ClientName | ClientAge |
+----------+------------+-----------+
| 1 | Larry | 34 |
| 2 | Maxwell | 44 |
| 3 | Bob | 38 |
| 4 | David | 39 |
+----------+------------+-----------+
4 rows in set (0.00 sec)
阅读更多:MySQL 教程
极客教程