每當插入選擇結果時,都不需要使用值。為了插入 select 的結果,我們首先創建兩個表。
第一個表查詢如下 –
< FirstTableDemo> mysql> create table FirstTableDemo −> ( −> StudentId int, −> StudentName varchar(100) −> ); Query OK, 0 rows affected (0.41 sec)
登錄后復制
現在創建第二個表,然后使用INSERT SELECT命令將第二個表的記錄插入到第一個表中。
創建第二個表的查詢如下:
<SecondTableDemo> mysql> create table SecondTableDemo −> ( −> Id int, −> Name varchar(100) −> ); Query OK, 0 rows affected (0.47 sec)
登錄后復制
使用插入命令在表中插入記錄。查詢如下 −
mysql> insert into SecondTableDemo values(1,'John'); Query OK, 1 row affected (0.14 sec) mysql> insert into SecondTableDemo values(2,'Sam'); Query OK, 1 row affected (0.27 sec)
登錄后復制
現在第二個表中有兩條記錄。使用 select 語句顯示表中所有記錄的查詢如下 –
mysql> select *from SecondTableDemo;
登錄后復制
以下是輸出 −
+------+------+ | Id | Name | +------+------+ | 1 | John | | 2 | Sam | +------+------+ 2 rows in set (0.00 sec)
登錄后復制
使用INSERT SELECT語句將第二個表的所有記錄插入到第一個表中 −
mysql> insert into FirstTableDemo(StudentId,StudentName) −> select Id,Name from SecondTableDemo as tbl1 −> where tbl1.Id not in (select StudentId from FirstTableDemo); Query OK, 2 rows affected (0.57 sec) Records: 2 Duplicates: 0 Warnings: 0
登錄后復制
現在我們已經將第二個表的所有記錄插入到第一個表中。讓我們使用select語句進行交叉檢查。查詢如下所示 ?
mysql> select *from FirstTableDemo;
登錄后復制
以下是輸出 −
+-----------+-------------+ | StudentId | StudentName | +-----------+-------------+ | 1 | John | | 2 | Sam | +-----------+-------------+ 2 rows in set (0.00 sec)
登錄后復制
以上就是插入 MySQL select 的結果?是否可以?的詳細內容,更多請關注www.92cms.cn其它相關文章!