반응형
DB에서 작업 중 테이블 하나에서 UPDAT하는 것이 아니라 여러개를 JOIN 해서 UPDATE해야 하는 경우가 종종 발생한다.
MySQL의 JOIN을 이용한 UPDATE 형식은 다음과 같다.
UPDATE [테이블명1] A INNER JOIN [테이블명2] B
ON A.[JOIN할 컬럼명] = B.[JOIN할 컬럼명]
SET [변경할 컬럼명] = 변경할 값
(WHERE 절)
예를 들어 학생 테이블(TB_STUDENT)에 학생의 성별(GENDER) 컬럼이 있다고 하고,
학생 정보 테이블(TB_STUDENT_INFO)에 학생의 학년 컬럼(GRADE)이 있다고 하자.
여기서, 남학생(GENDER = 'M') 중에서 4학년(GRADE = 4)인 학생들의 학년을 5학년(GRADE = 5)으로 UPDATE한다고 가정해보자.
UPDATE TB_STUDENT_INFO A INNER JOIN TB_STUDENT B ON
A.STD_ID = B.STD_ID
SET A.GRADE = 5
WHERE A.GRADE = 4 AND B.GENDER = 'M'
이렇게 UPDATE 문을 작성할 수 있다.
반응형
'Programming > Database' 카테고리의 다른 글
대용량 데이터 처리 시 JPA vs MyBatis 성능 비교 (0) | 2025.01.22 |
---|---|
[mysql] 날짜 데이터로 요일 조회 쿼리 작성 (0) | 2024.03.20 |
[DBeaver] Auto-commit(오토커밋) 설정 해제 방법 (0) | 2022.10.24 |
[MySQL/MariaDB] 문자열 길이(byte수) 구하기 (0) | 2022.05.16 |