programing

MySQL - 하위 쿼리를 기반으로 값 업데이트

starjava 2023. 8. 30. 21:04
반응형

MySQL - 하위 쿼리를 기반으로 값 업데이트

제가 선택했다고 가정해 보겠습니다. 그러면 표 1에서 저를 반환합니다.

ID  Name
 1  Bob
 2  Alice
 3  Joe

그런 다음 다음 결과를 기준으로 다른 표에 UPDATE 값을 입력합니다.

UPDATE table2 SET Name = table1.Name WHERE ID = table1.ID

내부 선택은 다음과 같은 한 곳에서만 수행할 수 있습니다.

UPDATE table2 SET Name = (select Name from table1) WHERE ...

그리고 WHERE-condition을 어떻게 지정해야 할지 모르겠습니다.

당신이 해야 할 일은 그냥 이렇게 테이블에 합류하는 것입니다.

UPDATE table2 t2
JOIN table1 t1 ON t1.id = t2.id
SET t2.name = t1.name;

조인 결과

만약 당신이 선택으로 그것을 하기로 결정했다면, 당신은 이렇게 할 수 있습니다.

UPDATE table2 t2,
(   SELECT Name, id 
    FROM table1 
) t1
SET t2.name = t1.name
WHERE t1.id = t2.id

선택한 결과

 UPDATE table2
 SET name = (SELECT table1.Name FROM table1 WHERE table1.id = table2.id)
 WHERE apply_condition

편집:#1

   UPDATE table2 t2, (SELECT id, name FROM table1) t1 SET t2.name = t1.name WHERE t1.id = t2.id

링크, 다른 링크를 읽어주세요.

사용해 보세요.

Update table2
Set Name = (Select Name From table1 where table1.ID = table2.ID)
Where table2.ID In (Select ID From table1) 

언급URL : https://stackoverflow.com/questions/27154265/mysql-update-values-based-on-subquery

반응형