SQL

INSERT INTO SELECT

c29130811 2021. 6. 6. 22:43

SELECT 한 결과를 다른 테이블에 INSERT 하기

INSERT INTO table_name1 (column1, column2, column3, ...)
SELECT column1, coulmn2, column3 FROM table_name2 WHERE condition;

WHERE 또는 LIMIT을 걸어줌으로 조건 또는 개수를 지정할 수 있다.

 

테스트 데이터를 삽입할 때 매우 유용하게 사용. 

 

INSERT INTO table1 (table2_id, name, status, created_at, updated_at, deleted_at)
SELECT 
  id AS table2_id,
  name AS name,
  1 AS status,
  NOW() AS created_at,
  NOW() AS updated_at, 
  NULL AS deleted_at
FROM table2
ORDER BY id
LIMIT 20;

 

요런 식으로 2에 조회된 정보를 table1에 밀어 넣을 때

728x90

'SQL' 카테고리의 다른 글

WITH (CTE, Common Table Expression)  (0) 2024.07.11
INSERT INTO ... VALUES  (0) 2021.05.30
sub query  (0) 2021.05.27
CHAR_LENGTH  (0) 2021.05.24
DISTINCT  (0) 2021.05.23