728x90

가상 테이블

 

특징

  • WHERE, SUB QUERY, UNION, JOIN 등 다양한 결합과 조건으로 만들어진 데이터를 뷰를 통해 가상 테이블을 만들어 편리하고 빠르게 데이터를 조회
  • 저장장치 내에서 물리적으로 존재하지 않음
  • 사용자에게는 있는 것처럼 간주된다

장점

  1. 특정 사용자에게 테이블 전체가 아닌 필요한 필드만을 출력이 가능
  2. 복잡한 쿼리를 단순화해서 사용가능
  3. 쿼리 재사용 가능

단점

  1. 한 번 정의된 뷰는 변경불가
  2. 삽입, 삭제, 갱신 작업에 많은 제한 사항을 가진다
  3. 자신만의 인덱스를 가질 수 없다

구성)

create view viewname as select~ from~ where~;

 

 

뷰 생성

-- 뷰 생성(임시적인 사용)
create view v_student1
as select *from student where stu_dept='컴퓨터정보';

 

 

뷰 조인

create view v_enrol1
as select b.sub_name, a.sub_no, stu_no, enr_grade
from enrol a, subject b where a.sub_no=b.sub_no;

 

 

예시)

-- 사원테이블로부터 20번 부서의 사원들로 이루어져 있는 뷰를 생성(v_emp20)
create view v_emp20
as select *from
 emp where deptno=20;
-- 사원번호, 사원이름, 부서이름을 가지는 뷰(v_emp_dept)를 생성하라
create view v_emp_dept
as select empno, ename, dname
from emp,dept where emp.deptno=dept.deptno;

 

뷰 삭제)

DROP VIEW viewname;
728x90

'DBMS > MySQL' 카테고리의 다른 글

[MySQL] 쿼리 종합예시  (0) 2024.03.19
[MySQL] 스토어드 프로시저  (0) 2024.03.18
[MySQL] Top N 질의문  (0) 2024.03.18
[MySQL] Join  (0) 2024.03.18
[MySQL] DB 언어 분류(DML/DDL/DCL)  (0) 2024.03.15

+ Recent posts