DROP TABLE EMP;

CREATE TABLE EMP
(	
  EMPNO NUMBER(4,0), 
  ENAME VARCHAR2(10 BYTE), 
  JOB VARCHAR2(9 BYTE), 
  MGR NUMBER(4,0), 
  HIREDATE DATE, 
  SAL NUMBER(7,2), 
  COMM NUMBER(7,2), 
  DEPTNO NUMBER(2,0)
);

Insert into EMP values (7369,'SMITH','CLERK',7902,to_date('80/12/17','RR/MM/DD'),800,null,20);
Insert into EMP values (7499,'ALLEN','SALESMAN',7698, to_date('81/02/20','RR/MM/DD'),1600,300,30);
Insert into EMP values (7521,'WARD','SALESMAN',7698, to_date('81/02/22','RR/MM/DD'),1250,500,30);
Insert into EMP values (7566,'JONES','MANAGER',7839,to_date('81/04/02','RR/MM/DD'),2975,null,20);
Insert into EMP values (7654,'MARTIN','SALESMAN',7698,to_date('81/09/28','RR/MM/DD'),1250,1400,30);
Insert into EMP values (7698,'BLAKE','MANAGER',7839,to_date('81/05/01','RR/MM/DD'),2850,null,30);
Insert into EMP values (7782,'CLARK','MANAGER',7839,to_date('81/06/09','RR/MM/DD'),2450,null,10);
Insert into EMP values (7839,'KING','PRESIDENT',null,to_date('81/11/17','RR/MM/DD'),5000,null,10);
Insert into EMP values (7844,'TURNER','SALESMAN',7698,to_date('81/09/08','RR/MM/DD'),1500,0,30);
Insert into EMP values (7900,'JAMES','CLERK',7698,to_date('81/12/03','RR/MM/DD'),950,null,30);
Insert into EMP values (7902,'FORD','ANALYST',7566,to_date('81/12/03','RR/MM/DD'),3000,null,20);
Insert into EMP values (7934,'MILLER','CLERK',7782,to_date('82/01/23','RR/MM/DD'),1300,null,10);

DROP TABLE DEPT;

CREATE TABLE DEPT
( DEPTNO NUMBER(2,0), 
  DNAME VARCHAR2(14 BYTE), 
  LOC VARCHAR2(13 BYTE)
);

Insert into DEPT values (10,'ACCOUNTING','NEW YORK');
Insert into DEPT values (20,'RESEARCH','DALLAS');
Insert into DEPT values (30,'SALES','CHICAGO');
Insert into DEPT values (40,'OPERATIONS','BOSTON');
--
CREATE TABLE emp3 AS SELECT * FROM emp;
--
CREATE TABLE dept3 AS SELECT * FROM dept;

직급이 'SALESMAN'인 직원 정보 검색

SELECT * FROM emp3 WHERE JOB = 'SALESMAN';

Untitled

view_SALESMAN 뷰 생성

CREATE VIEW view_SALESMAN AS 
SELECT empno, ename, hiredate FROM emp
WHERE JOB = 'SALESMAN';

SELECT * FROM view_SALESMAN;

Untitled

view_SALESMAN1500 뷰 생성

CREATE VIEW view_SALESMAN1500 AS
SELECT empno, ename, sal FROM emp3 
WHERE job ='SALESMAN' AND SAL <= 1500;

SELECT * FROM view_SALESMAN1500;

Untitled


읽기 전용 뷰(with Read Only)

CREATE VIEW view_name 
AS
    SELECT column_name(s)
    FROM table_name
    WHERE condition WITH read ONLY; ...

view_SALESMAN1500에 직원정보 추가