SQL
[MSSQL] Delete, Update - Delete, Update문 JOIN, LEFT JOIN ... 사용하기
금월하
2021. 5. 14. 14:07
반응형
MSSQL에서 테이블명, 조건문에 따른 Delete 또는 다른 테이블과 Join 하여 조회한 데이터를 삭제하는 방법이 있습니다.
테이블명, 조건문에 따른 Delete의 경우 아래와 같이 사용합니다.
DELETE FROM TABLE1
WHERE [조건문]
다른 테이블과 JOIN 한 결과를 가지고 있는 데이터를 삭제해야 하는 경우는 아래와 같이 사용합니다.
DELETE a
FROM
TABLE1 a
JOIN TABLE2 b on a.id = b.id
WHERE [조건문]
위와 같이 TABLE1, TABLE2를 JOIN 하고 조건문을 사용하여 TABLE1의 데이터를 삭제할 수 있습니다.
Update문의 경우
일반적인 Update를 사용할 때는 아래와 같이 사용하지만
UPDATE TABLE1
SET
id = 4
where data = 'temp'
다른 테이블과 JOIN 할 경우 아래와 같이 사용 가능합니다.
UPDATE a
SET
a.id = 4
FROM TABLE1 a
JOIN TABLE2 b on b.id = a.id
where b.data2 = 'test'
Update문
UPDATE 테이블이름
형식과
Delete문
DELETE 테이블이름
처럼 앞을 하나의 블록으로 생각해 보면 결국 사용 방법은 같습니다.