insert

  • 테이블에 새로운 로우를 추가하는 구문이다.
  • insert into 테이블 명 (컬럼명.)
  • values(값…)

ex)

create table emp01
as
select empno, ename, job from emp where 1=0;
-- 무조건 거짓이므로 로우를 가져오지 못한다. 그러나 구조를 가져올 수 있다.
-- emp01테이블에 emp테이블의 구조만 가져오겠다는 것이 된다.

ex)

-- 다음과 같은 사원 정보를 추가한다.
-- 1111 홍길동 인사
-- 2222 김길동 개발
-- 3333 최길동 인사
-- 4444 박길동 생산
insert into emp01 (empno, ename, job) -- 컬럼목록
values (1111, '홍길동', '인사'); -- 값을 1대1매칭으로 입력한다.

insert into emp01 (empno, ename, job) -- 컬럼목록
values (2222, '김길동', '개발'); -- 값을 1대1매칭으로 입력한다.

insert into emp01 (empno, ename, job) -- 컬럼목록
values (3333, '최길동', '인사'); -- 값을 1대1매칭으로 입력한다.

insert into emp01 (empno, ename, job) -- 컬럼목록
values (4444, '박길동', '생산'); -- 값을 1대1매칭으로 입력한다.

ex)

-- 컬럼 목록을 생략하는 경우
-- 모든 값을 입력할 경우에만 사용가능하고 순서대로 1대1 매칭된다.
insert into emp01
values (5555, '황길동', '생산');

ex)

-- 컬럼 목록에 모든 컬럼이 있지 않을 경우
-- 이경우 job에는 null값을 저장한다.
insert into emp01 (empno, ename)
values (6666, '이길동');

-- null을 명시적으로 저장
insert into emp01 (empno, ename, job)
values (7777, '박보검', null);

서브쿼리로 데이터 저장하기

  • insert info 테이블명
    서브쿼리
  • insert all
    into 테이블명 (컬럼명) values(컬럼명)
    서브쿼리

ex)

-- 서브쿼리로 데이터 저장하기
create table emp02
as
select empno, ename, job from emp where 1=0;

insert into emp02(empno,ename, job)
select empno, ename, job from emp;

insert into emp02
select empno, ename,job from emp;

select * from emp02;

ex)

-- insert all
create table emp03
as
select empno, ename, job from emp where 0=1;

create table emp04
as
select empno, ename, hiredate from emp where 1=0;

insert all
into emp03(empno, ename, job) values (empno, ename, job)
into emp04(empno, ename, hiredate) values (empno, ename, hiredate)
select empno, ename, job, hiredate from emp;

select * from emp03;
select * from emp04;

ex)

-- 사원번호 이름 급여를 저장할 수 있는 빈 테이블을 만들고
-- 급여가 1500이상인 사원들의 사원번호, 이름, 급여를 저장한다.
create table emp05
as
select empno, ename, sal from emp where 1=0;

insert into emp05(empno, ename, sal)
select empno, ename, sal from emp where sal>=1500;

select * from emp05;

Comment and share

  • page 1 of 1

Hyeon Soo Ahn

author.bio


author.job