mssql sqlserver insert into from 与select into from 关键字的用法区别


摘要:
insert into from同select into from都是用于复制表数据的关键字
select into from 关键字需要目标表不存在,复制时会自动创建目标表
insert into from 关键字需要目标表存在,然后向目标表中插入相应的数据
下文主要讲述两种关键字的用法



1.insert into from

insert into [目标表]([字段1],[字段2]…)
select [值1],[值2]… from [源数据表]


注意事项:
[目标表] 必须在执行insert into 关键字之前已经创建成功
[目标表]中必须包含 “[字段1],[字段2]…” 这些列

———————————————
例:

  create table A( name1 varchar(30),name2 varchar(30),name3 varchar(30) )  
create table B(nameB varchar(30),nameC varchar(30),qty int )
go
--生成基础数据
insert into A values('maomao365.com','网站','站长')
insert into A values('猫猫小屋','测试数据','insert into')
insert into A values('牛逼站长','mssql教程第一位','insert into 教程')
go
--insert into from 将A表数据插入至B表中
insert into B(nameB,nameC,qty) select name1,name2,120 from A
go
--4.显示更新后的结果
select * from B
go
--5.删除测试表
drop table A
drop table B
 

mssql_sqlserver_insert_into_from用法举例说明

mssql_sqlserver_insert_into_from用法举例说明


——————————

2.select into from

select [字段1],[字段2]… into [目标表]
from [源数据表]

注意事项:
[目标表] 必须在执行select into 关键字之前已经未创建
[源数据表] 可以不存在,我们可以通过表达式虚拟相关列

———————————————————–
例:

    
create table A( name1 varchar(30),name2 varchar(30),name3 varchar(30) )  
 
go
--生成基础数据
insert into A values('maomao365.com','网站','站长')
insert into A values('猫猫小屋','测试数据','insert into')
insert into A values('牛逼站长','mssql教程第一位','insert into 教程')
go
--select into from 使用A表生成B表
--在生成的同时,我们可以二次指定表名,
--DB服务器会根据数据自动生成新的数据类型,如下所示:
 select  name1 as nameB,name2 as nameBC,120 as qty into B  from A
go
--4.显示更新后的结果
select * from B
go
--5.删除测试表
drop table A
drop table B
 
mssql_sqlserver_select_into_from用法举例说明

mssql_sqlserver_select_into_from用法举例说明