레코드를 조회해서 해당 인자 값을 참조해서 새로운 레코드를 INSERT할때 쓰인다.
SELECT INSERT 해서 여러행을 입력할 수 있다.
예시: 해적 테이블에서 해적번호 8000번인 애를 새로 집어넣기
pirate 테이블의 컬럼을 선언하지 않고 insert 가능
INSERT INTO pirate
SELECT 8000
,'LUFFY'
,a.name
,a.age
,a.prize
,a.role
FROM pirate p
WHERE pirate_no = 5000
pirate_no 순번을 붙일경우에는 서브 쿼리를 사용하여 채번가능
INSERT INTO pirate
SELECT (SELECT MAX(pirate_no)+1 FROM pirate)
,'zoro'
,a.age
,a.prize
,a.role
FROM pirate p
WHERE pirate_no = 5000
pirate 테이블 컬럼 선언해야함
INSERT INTO pirate (pirate_no,name,age)
FROM pirate p
WHERE pirate_no = 5000
INSERT ALL
WHEN role = 'captain' THEN
INTO pirate_captain (cap_no,cap_age,cap_name)
VALUES (pirate_no,age,name)
WHEN role = 'doctor' THEN
INTO pirate_captain (doc_no,doc_age,doc_name)
VALUES (pirate_no,age,name)
WHEN role = 'mate' THEN
INTO pirate_captain (mate_no,mate_age,mate_name)
VALUES (pirate_no,age,name)