2016-06-10 60 views
1

我需要创建一个行的副本,然后更新它。SQL复制一行然后更新

NAME  LOCATION FLAG 
    ====  ======== ==== 
    name1  location1 0 
    name2  location2 0 

首先我必须选择与NAME = NAME1和LOCATION = LOCATION1行和创建重复行,然后更新的新值的名称列。

我可以

select NAME,LOCATION,FLAG from TABLE where NAME=name1 and LOCATION=location1

选择该行,所以结果应该是像

NAME  LOCATION FLAG 
    ====  ======== ==== 
    name1  location1 0 
    name2  location2 0 
    name3  location1 0 
+0

这是有点不清楚 – Spiderman

+0

就像我在上面显示的那样,我需要通过复制第三行第三行NAME列用新值name3更新来插入第三行。第一行用'NAME = name1和LOCATION = location1'条件选择。 – CodeDezk

回答

3

您可以直接插入你的选择,只是选择新的名称作为名称 - 值列

INSERT INTO TABLE (Name, Location, Flag) 
    select "New Name",LOCATION,FLAG from TABLE where NAME=name1 and LOCATION=location1