使用 INSERT...SELECT 插入行 INSERT 语句中的 SELECT 子查询可用于将一个或多个其它的表或视图的值添加到表中。使用 SELECT 子查询可同时插入多行。下面的 INSERT 语句将 titles 中数据的 type 是 modern cooking 的所有行的数据插入到一个单独的表中:USE pubs INSERT INTO MyBooks SELECT title_id, title, type FROM titles WHERE type = 'mod_cook'子查询的选择列表必须与 INSERT 语句列的列表匹配。如果没有指定列的列表,选择列表必须与正向其插入的表或视图的列匹配。
--定义一个表变量@tbl_temp declare @tbl_temp table( sales_person_code nvarchar(40) )--向变量@tbl_temp中插入数据 insert into @tbl_temp select distinct sales_person_code from AS_SALES_PERSON_PRD_STDPRC where sales_person_code<>@sales_person_code--跟这个一样 insert into @tbl_temp(sales_person_code) select distinct sales_person_code from AS_SALES_PERSON_PRD_STDPRC where sales_person_code<>@sales_person_code
能不能说得详细些啊? 比如举个用insert .. select插入数据的例子
create table a(aa int,bb char(2))insert into a select 1,'we'
把select 的集合写入到insert的表中
恩。 把select 的集合写入到insert的表中
将原表的内容插入到新表中,如 insert into 新表 form select * from 原表
楼上的这们“将原表的内容插入到新表中,如insert into 新表 form select * from 原表”是不是这句有错误,怎么多了个 from
唯一的区别是select是将结果集(多行记录)插入到对应的表(表变量)中去
而values只是单一的一行记录
INSERT 语句中的 SELECT 子查询可用于将一个或多个其它的表或视图的值添加到表中。使用 SELECT 子查询可同时插入多行。下面的 INSERT 语句将 titles 中数据的 type 是 modern cooking 的所有行的数据插入到一个单独的表中:USE pubs
INSERT INTO MyBooks
SELECT title_id, title, type
FROM titles
WHERE type = 'mod_cook'子查询的选择列表必须与 INSERT 语句列的列表匹配。如果没有指定列的列表,选择列表必须与正向其插入的表或视图的列匹配。
declare @tbl_temp table( sales_person_code nvarchar(40) )--向变量@tbl_temp中插入数据
insert into @tbl_temp
select distinct sales_person_code from AS_SALES_PERSON_PRD_STDPRC
where sales_person_code<>@sales_person_code--跟这个一样
insert into @tbl_temp(sales_person_code)
select distinct sales_person_code from AS_SALES_PERSON_PRD_STDPRC
where sales_person_code<>@sales_person_code
比如举个用insert .. select插入数据的例子
把select 的集合写入到insert的表中
insert into 新表
form select * from 原表