Insert is a common statement in T-SQL, insert into table (Field1,field2,...) VALUES (value1,value2,...) This form is essential in application development. However, during the development and testing process, we often encounter situations that require table duplication, such as copying a partial field of a Table1 data into a table2, or copying the entire table1 to table2, when we are going to use SELECT into and INSERT The Into SELECT table duplicates the statement.
1.INSERT into SELECT statement
The statement form is:Insert into Table2 (field1,field2,...) Select Value1,value2,... from Table1
requires that the target table Table2 must exist, because the target table Table2 already exists, so we can insert a constant in addition to inserting the field Table1 the source table. Examples are as follows:
--1. Create a test table Create TABLETable1 (Avarchar(Ten), Bvarchar(Ten), Cvarchar(Ten), CONSTRAINT [Pk_table1] PRIMARY KEY CLUSTERED(AASC ) ) on [PRIMARY] Create TABLETable2 (Avarchar(Ten), Cvarchar(Ten), Dint, CONSTRAINT [Pk_table2] PRIMARY KEY CLUSTERED(AASC ) ) on [PRIMARY] GO --2. Create test Data Insert intoTable1Values('Zhao','ASDs',' -') Insert intoTable1Values('Money','ASDs',' -') Insert intoTable1Values('Sun','ASDs',' the') Insert intoTable1Values('Li','ASDs',NULL) GO Select * fromTable2--3.INSERT into SELECT statement to replicate table data Insert intoTable2 (A, C, D)SelectA,c,5 fromTable1GO --4. Display the updated results Select * fromTable2GO --5. Deleting a test table Drop TABLETable1Drop TABLETable2
2.SELECT into from statement
The statement form is:SELECT vale1, value2 into Table2 from Table1
The target table Table2 is not present because the table Table2 is automatically created when it is inserted, and the specified field data in Table1 is copied to Table2 . Examples are as follows:
--1. Create a test table Create TABLETable1 (Avarchar(Ten), Bvarchar(Ten), Cvarchar(Ten), CONSTRAINT [Pk_table1] PRIMARY KEY CLUSTERED(AASC ) ) on [PRIMARY] GO --2. Create test Data Insert intoTable1Values('Zhao','ASDs',' -') Insert intoTable1Values('Money','ASDs',' -') Insert intoTable1Values('Sun','ASDs',' the') Insert intoTable1Values('Li','ASDs',NULL) GO --3.SELECT to from statement CREATE table Table2 and copy data SelectA,c intoTable2 fromTable1GO --4. Display the updated results Select * fromTable2GO --5. Deleting a test table Drop TABLETable1Drop TABLETable2
Transferred from: http://www.cnblogs.com/freshman0216/archive/2008/08/15/1268316.html
Select INTO and INSERT into select two table copy statements