SQL - 插入

时间:2014-09-26 10:58:33

标签: sql-server

我想将表中的一行复制到自身中(但使用不同的ID)。

我尝试了以下代码并且没有工作:

insert into myTable
select * from myTable where id='1'

假设我的表看起来像

id   | name    | age
-----------------------
 1   | tom     | 25
 2   | dick    | 35
 3   | harry   | 45

我想复制tom行并添加新ID:

id   | name    | age
-----------------------
 1   | tom     | 25
 2   | dick    | 35
 3   | harry   | 45
 4   | tom     | 25

1 个答案:

答案 0 :(得分:1)

尝试以下查询:(基于原始问题)

INSERT INTO myTable(field1, field2, field3)
SELECT  (field1, field2, field3)
FROM    myTable where field1='value1'
;

参考Sample Fiddle


对于您编辑过的问题,this回答可能有所帮助。