-
MSSQL Update 문 사용법. Join 포함IT/SQL 2024. 4. 10. 10:05
기본 update 문법
우선 아래와 같은 테이블이 있습니다.
예제 테이블 colA = 2 인 로우의 colB 를 200 으로 업데이트 합니다.
UPDATE tblA SET colB = 200 WHERE colA = 2
내용은 간단합니다.
JOIN 을 포함한 UPDATE 방법
join 을 포함한 예제 테이블 tblB 의 colBB 값을 이용해서 로우를 찾아서 tblA 의 colB 를 업데이트 합니다.
UPDATE A SET colB = B.colBB FROM tblA A JOIN tblB B ON A.colA = B.colBA WHERE B.colBB = 300
쿼리문 UPDATE A : from 절에서 alias 를 사용했다면 update 절에 alias 를 사용할 수 있습니다. 테이블 이름을 직접 써줘도 됩니다. A 가 아닌 B 가 들어가도 됩니다.
다만 SET 절의 UPDATE 되는 컬럼은 반드시 update 절에서 지정한 테이블이 되므로, SET 절의 update 되는 컬럼에는 alias 를 사용할 수 없습니다. 그리고 join 을 하지 않았더라도 from 절이 있으면 alias 를 사용해도 됩니다.
UPDATE 절의 순서
참고로 update 문에서 set 절의 순서는 아무런 영향을 주지 않습니다.
update 절의 순서 tblC 에 원래 1, 2, 3 이 들어있었는데, 위와 같이 update 문을 실행해도 colB, C 에는 update 전의 colA, B 값이 들어갑니다.
그런데 아래 SELECT 문에서는 순서가 좀 다릅니다.
select 절의 순서 UPDATE 와는 약간 다른 결과입니다. 흔하지 않은 케이스이지만, 무심코 이렇게 문장을 사용하면 실수 할 수 있습니다.
'IT > SQL' 카테고리의 다른 글
MSSQL 문자열 붙이기 CONCAT (0) 2024.04.17 MSSQL 임시테이블 존재여부 체크 해서 생성하기 (0) 2024.04.12 MSSQL 버전 확인 등 구성함수(@@함수) (0) 2024.04.08 MSSQL 프로시저 검색, 프로시저 내용 검색 (0) 2024.04.07 MSSQL CONVERT 사용법 및 날짜 포맷 (1) 2024.04.06