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:
--1Creating a Test Table CREATE TABLE Table1 (a varchar (Ten), b varchar (Ten), C varchar (Ten), CONSTRAINT [Pk_table1] PRIMARY KEY CLUSTERED (a ASC)) on [PRIMARY] Create TABLE Table2 (a varchar (Ten), C varchar (Ten), Dint, CONSTRAINT [pk_table2] PRIMARY KEY CLUSTERED (a ASC)) On [PRIMARY] GO--2. Create test data Insert into Table1 values ('Zhao','ASDs',' -') Insert into Table1 values ('Money','ASDs',' -') Insert into Table1 values ('Sun','ASDs',' the') Insert into Table1 values ('Li','ASDs',NULL) GOSelect* fromTable2--3. INSERT INTO SELECT statement Copy table data insert into Table2 (A, C, D)SelectA,c,5 fromTable1 GO--4. Show updated ResultsSelect* fromTable2 GO--5. Delete Test table drop table Table1 drop table Table2
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:
--1Creating a Test Table CREATE TABLE Table1 (a varchar (Ten), b varchar (Ten), C varchar (Ten), CONSTRAINT [Pk_table1] PRIMARY KEY CLUSTERED (a ASC)) on [PRIMARY] GO /c7>--2. Create test data Insert into Table1 values ('Zhao','ASDs',' -') Insert into Table1 values ('Money','ASDs',' -') Insert into Table1 values ('Sun','ASDs',' the') Insert into Table1 values ('Li','ASDs',NULL) GO--3. SELECT into from statement CREATE table Table2 and copy dataSelectA,c into Table2 fromTable1 GO--4. Show updated ResultsSelect* fromTable2 GO--5. Delete Test table drop table Table1 drop table Table2
Select INTO and INSERT into select two table copy statements