[sql] SQL INSERT 문에서 서브쿼리 사용하기

SQL INSERT 문을 사용하여 데이터를 삽입할 때, 때로는 서브쿼리를 사용하여 추가적인 데이터를 가져와 함께 삽입해야 하는 경우가 있습니다. 서브쿼리를 사용하면 삽입되는 데이터를 조작하거나 다른 테이블에서 값을 가져와서 함께 삽입할 수 있습니다.

서브쿼리를 사용하여 SQL INSERT 문을 작성하는 방법에 대해 알아보겠습니다.

기본 INSERT 문

일반적인 SQL INSERT 문은 다음과 같이 작성됩니다.

INSERT INTO 테이블명 (1, 2, 3, ...)
VALUES (1, 2, 3, ...);

이때, 서브쿼리를 사용하여 추가 데이터를 가져와 함께 삽입할 수 있습니다. 다음은 서브쿼리를 사용한 SQL INSERT 문의 예시입니다.

서브쿼리를 사용한 INSERT 문

INSERT INTO 주문_상세 (주문번호, 상품번호, 수량, 가격)
VALUES ((SELECT 주문번호 FROM 주문 WHERE 주문일자 = '2022-01-01'), 
(SELECT 상품번호 FROM 상품 WHERE 상품명 = '청바지'), 
1, 
(SELECT 가격 FROM 상품 WHERE 상품명 = '청바지'));

위의 예시는 주문_상세 테이블에 주문번호, 상품번호, 수량, 가격을 삽입하는 서브쿼리를 사용한 예시입니다. 여기서 주문 테이블과 상품 테이블에서 조건에 맞는 값을 가져와 함께 삽입하고 있습니다.

이와 같이 서브쿼리를 사용하여 SQL INSERT 문을 작성하면, 더 복잡한 데이터 조작 및 삽입을 할 수 있습니다.

서브쿼리를 사용한 SQL INSERT 문에 대한 간단한 설명을 살펴보았습니다. 서브쿼리를 사용하여 데이터를 삽입하는 경우, 해당 테이블 구조와 조건에 맞게 적절히 활용할 수 있도록 유의해야 합니다.