SQLSERVER2000同表数据复制(部分复制)

   在项目中可能需要用到同表数据复制,如:两笔记录除了日期和ROWID(自动编号)其他数据均是一模一样,一般的办法就是读取出来然后再插进去,即使写到存储过程里面也一样需要执行两条SQL语句,效率也比较低的。一条语句进行复制数据:

insert into new_table_name(column1,column2,column3,column4) select column1,column2,column3,column4 from table_name where ...

new_table_name和table_name指向同一个表就能往同一个达到同表复制的效果。但是可能需要部分复制,另外的数据需要传入参数或者如getdate()等,可以如下:

insert into table_name(column1,column2,column3,column4,column5,column6) select column1,column2,column3,column4,getdate(),'test' from table_name where ...

问题解决!!注意字段对应和数据类型对应!!

posted @ 2007-11-19 14:10  农民伯伯  阅读(2441)  评论(1编辑  收藏  举报