1. 程式人生 > 其它 >INSERT INTO SELECT

INSERT INTO SELECT

Insert INTO table(field1,field2,...) values(value1,value2,...)這種形式的在應用程式開發中必不可少。

經常會遇到需要表複製的情況,如將一個table1的資料的部分欄位複製到table2中,或者將整個table1複製到table2中,這時候我們就要使用SELECT INTO 和 INSERT INTO SELECT 表複製語句了。

INSERT INTO SELECT語句

語句形式為:Insert into Table2(field1,field2,...) select value1,value2,... from Table1

要求目標表Table2必須存在,由於目標表Table2已經存在,所以我們除了插入源表Table1的欄位外,還可以插入常量。

SELECT INTO FROM語句

語句形式為:SELECT vale1, value2 into Table2 from Table1

要求目標表Table2不存在,因為在插入時會自動建立表Table2,並將Table1中指定欄位資料複製到Table2中。

儲存過程中使用SELECT INTO FROM

CREATE PROCEDURE get_address(
-> IN p_playerno SMALLINT,
-> OUT p_street VARCHAR(30),
-> OUT p_houseno VARCHAR(4),
-> OUT p_town VARCHAR(30),
-> OUT p_postcode VARCHAR(6))
-> BEGIN
-> SELECT street, houseno, town, postcode
-> INTO p_street, p_houseno, p_town, p_postcode
-> FROM PLAYERS
-> WHERE playerno = p_playerno;
-> END
在使用SELECT …INTO語句時,變數名和資料表中的欄位名不能相同,否則會出錯。

本文來自部落格園,作者:雲敬軒,轉載請註明原文連結:https://www.cnblogs.com/yjxuan/p/15623840.html