Recent Posts
Recent Comments
Link
06-28 05:11
Today
Total
관리 메뉴

삶 가운데 남긴 기록 AACII.TISTORY.COM

SQL 다른 테이블의 내용으로 여러 행 업데이트, 삭제 본문

DEV&OPS/Database

SQL 다른 테이블의 내용으로 여러 행 업데이트, 삭제

ALEPH.GEM 2021. 1. 8. 20:03

특정 테이블의 내용으로 테이블을 업데이트할 때가 있습니다.

이럴 때 join 을 이용하여 update 할 수 있습니다.

 

UPDATE 업데이트할테이블명 AS A 
INNER JOIN 데이터를가져올테이블명 AS B
ON A.조인키 = B.조인키
SET	A.업데이트할컬럼 = B.가져올데이터컬럼
WHERE 절

 

예제) 테이블(TBL__WRK)에 수정 일자(MODDATE)가 null 인 행들만 등록일자(REGDATE)로 업데이트

UPDATE TBL_WRK AS A 
INNER JOIN TBL_WRK AS B 
ON A.WRKID = B.WRKID 
SET A.MODDATE = B.REGDATE 
WHERE A.MODDATE IS NULL

테이블 내용을 기초로 DELETE 할 때는 조금 다릅니다.

DELETE 
FROM TBL1 USING TBL_TEST1 AS TBL1 
INNER JOIN TBL_TEST2 AS TBL2
WHERE TBL1.id=TBL2.id 

 

 

 

 

 

 

 

 

 

DEV

 

728x90