INSERT的两种写法

3/7/2017来源:SQL技巧人气:573

有朋友问我存储过程中怎么判断后将不同的数据插入到同一张零时表中,如下写法一直报错

if(判断) Insert into Table2(field1,field2,...) select value1,value2,... from Table1 else Insert into Table2(field1,field2,...) select value1,value2,... from Table1

我告诉他这样写的话Table2会重复创建,当然会报错 那怎么弄,我也懵逼啦,直接百度Insert,然后发现了INSERT的两种写法,可以完美解决上述问题

select field1,field2,... into Table2 from Table1 insert into Table2 (field1,field2,...) select field1,field2,... from Table1

需要注意的是必须先存在表Table2,否则会执行报错

补充:

判断后将不同的数据插入到同一张零时表中除了使用两种Insert方法处理外,还可以定义字符串,遍历保存插入语句,然后执行 这种方法在处理大量数据时比直接Insert方法效率高