Insert is a common statement in T-SQL, insert into table (Field1,field2,...) VALUES (value1,value2,...) This form is essential in application development. But in our development, testing process, we often encounter situations that require table replication, such as copying part of a Table1 data to table2, or copying the entire table1 to table2, when we use SELECT INTO and INSERT into The SELECT table replicates the statement.
1. INSERT into SELECT statement
Statement form: Insert into Table2 (field1,field2,...) Select Value1,value2,... from Table1
The target table Table2 must exist, and because the target table Table2 already exists, we can insert a constant in addition to the fields Table1 the source table. Examples are as follows:
--1. Create a test table
Create TABLE Table1
(
A varchar (10),
b varchar (10),
C varchar (10),
CONSTRAINT [Pk_table1] PRIMARY KEY CLUSTERED
(
A ASC
)
) on [PRIMARY]
Create TABLE Table2
(
A varchar (10),
C varchar (10),
d int,
CONSTRAINT [Pk_table2] PRIMARY KEY CLUSTERED
(
A ASC
)
) on [PRIMARY]
Go
--2. Create test data
Insert into Table1 values (' Zhao ', ' ASDs ', ' 90 ')
Insert into Table1 values (' money ', ' ASDs ', ' 100 ')
Insert into Table1 values (' Sun ', ' ASDs ', ' 80 ')
Insert into Table1 values (' Lee ', ' ASDs ', null)
Go
SELECT * FROM Table2
--3.insert into a SELECT statement to replicate table data
Insert into Table2 (A, C, D) select a,c,5 from Table1
Go
--4. Show updated results
SELECT * FROM Table2
Go
--5. Delete Test table
Drop TABLE Table1
Drop TABLE Table2
2. SELECT into from statement
Statement form: SELECT vale1, value2 into Table2 from Table1
The target table Table2 does not exist because the table Table2 is created automatically at insert time and the specified field data in Table1 is copied to Table2. Examples are as follows:
--1. Create a test table
Create TABLE Table1
(
A varchar (10),
b varchar (10),
C varchar (10),
CONSTRAINT [Pk_table1] PRIMARY KEY CLUSTERED
(
A ASC
)
) on [PRIMARY]
Go
--2. Create test data
Insert into Table1 values (' Zhao ', ' ASDs ', ' 90 ')
Insert into Table1 values (' money ', ' ASDs ', ' 100 ')
Insert into Table1 values (' Sun ', ' ASDs ', ' 80 ')
Insert into Table1 values (' Lee ', ' ASDs ', null)
Go
--3.select into from statement creates a table Table2 and copies data
Select A,c into