2016-06-10 3 views
1

행의 복제본을 만들어 업데이트해야합니다.SQL 행을 복제 한 다음 업데이트하십시오.

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

먼저 나는 NAME = NAME1 및 LOCATION = LOCATION1로 행을 선택하고 중복 행을 만든 다음 새 값으로 NAME 열을 업데이트해야합니다.

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

조금 불분명하다 – Spiderman

+0

위의 그림과 같이 세 번째 행 NAME 열이 새 값 name3으로 업데이트 된 첫 번째 행을 복제하여 세 번째 행을 삽입해야합니다. 그리고 첫 번째 행은'NAME = name1 and LOCATION = location1' 조건으로 선택됩니다. – CodeDezk

답변

3

당신이 직접 선택을 삽입하고 단지 이름 -에 대한 값으로 새 이름을 선택할 수 있습니다처럼

내가

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

하여 행을 선택할 수 있습니다

그래서 결과는해야한다 열

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