SQL查询出一个表数据插入到另一个表里

下面两中方式都是将 srcTbl 的数据插入到 destTbl,但两句又有区别的:

方式一

(select into from)要求目标表(destTbl)不存在,因为在插入时会自动创建。

select * into destTbl from srcTbl

方式二

(insert into select from)要求目标表(destTbl)存在,由于目标表已经存在,所以我们除了插入源表(srcTbl)的字段外,还可以插入常量,如例中的:5。特别注意的是:插入的字段顺序要和查询出的字段顺序一致

insert into destTbl(fld1, fld2) select fld1, 5 from srcTbl