본문 바로가기
DB/MySQL

4.3.6 뷰(Views)

by 가므자 2012. 2. 22.

뷰 테이블은 사용자가 여러 테이블에 있는 데이터를 이용하여 보기 편한 새로운 테이블을 만들 수 있는 기능이다.

데이터가 실제 저장되는 테이블이 아닌 사용자에게 보여주기 위한 뷰 전용 테이블이라 할 수 있다. 뷰 테이블은 필요에 따라 사용자가 재 정의하여 생성할 수 있으며 어떤 기억 공간을 차지 하지도 않는다.

학적 테이블의 학번, 이름, 출생년도, 나이를 출력하라
select stu_no, stu_name, birth_year "출생년도",
year(now() - birth_year +1 "나이
" #now()함수로 현재의 날짜를 추출하는 함수.
from student

이와 같이 나이를 필요로 하는 경우에 매번 계산을 별도로 처리해주어야하는 불편함이 있다.

학적 테이블의 학번, 이름, 출생년도, 나이로 구성된 AGES 뷰 테이블을 출력하라
creat view ages(stu_no, stu_name,age) as
select stu_no, stu_name, year(now()) -birth_year +1
from student;


select * from ages;


ages뷰 내용은 데이터베이스에 저장되지는 않지만 select 명령문이 실행되는 순간에 유도된다. 따라서 뷰의 사용은 기억 공간을 사용하는 부가적인 비용은 전혀없으며, 다른 테이블에 이미 저장된 데이터만으로 구성할 수 있다.

- 반복되는 명령문이나 루틴(routine)을 간단히 사용하고자할때
- 테이블의 출력 방법을 재구성하고자 할 때
- 여러 단계에서 Select 명령문이 사용될 때,
- 데이터를 보호하고자 할 때

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

4.3.4 질의(Query)  (0) 2012.02.23
4.4 MySQL 보안 설정  (0) 2012.02.22
인덱스 생성 명령문  (0) 2012.02.22
4.3 학사관리 예제 만들기  (0) 2012.02.22
4.2 SQL 데이터형(data type), NULL  (0) 2012.02.22

댓글