很抱歉这个天真的问题,但是我对SQL还是比较陌生。有人可以帮我写一个SQL代码(SQL Server 2014)吗?
我有一个包含10列的表“ A”。第9列具有以下四个值中的任何一个:“ Test”,“ Hold”,“ Go”或“ Flag”
我想插入第9列的值=“ Hold”或“ Go”的任何记录的重复副本,并将其更改为值“ Step 3”。
感谢您的帮助!
答案 0 :(得分:2)
您使用insert . . . select
:
insert into t (col1, . . . col10)
select col1, . . . col8, 'Step 3', col10
from t
where col9 in ('Hold', 'Go');
如果其中一列是自动生成的,则将其忽略:
insert into t (col2, . . . col10)
select col2, . . . col8, 'Step 3', col10
from t
where col9 in ('Hold', 'Go');