VIEW
기본 테이블은 CREATE table 명령문을 사용하여 생성하고 데이터 저장하는데 비해
view 테이블은 그자체로 행을 가지고 있지 않고 기본 테이블로부터
조합한 데이터에 대한 처리로 가상 테이블을 만들어서 사용자에게 보여줍니다.
(가상 테이블 : 메모리 상에서만 있는 테이블을 말합니다.)
1. view 생성
뷰는 CREATE VIEW 명령문으로 생성합니다.
ex)
create view v_class as select distinct stu_no, grade, class from student;
v_class라는 이름의 view 테이블을 만드는데
stu_no, grade, class의 값을 student 테이블에서 가져옵니다.(distinct : 중복 제거)
++ view테이블 만들때 select를 잘쓰는게 좋습니다.
ex2)
create view total_view as select s.stu_no,s.stu_name,sum(f.jang_total) from student s,fee f where s.stu_no = f.stu_no and f.jang_total is not null group by s.stu_no;
위의 쿼리는 장학금을 받은 것의 sum을 구한 것을 total_view 뷰 테이블에 저장하는 쿼리 입니다.
2. view 열 이름(column name)
view 열이름, 말그대로 뷰 테이블을 만들때 컬럼 이름을 정해주는 것입니다.
예를 보면
create view birth_view(byear, bmonth, bday) as select substring(id_num,1,2) "생년", substring(id_num,3,2) "생월", substring(id_num,5,2) "생일" from student;
위와 같이 create view 테이블이름(컬럼1,컬럼2,컬럼3)as ...
이렇게 되어있습니다.
++주의! :
1. 뷰 테이블의 이름은 테이블 이름하고 같게 만들수도 없지만 만들려고 하지도 말것!
2. WITH CHECK OPTION은 MySQL에서 동작하거나 동작 안하는경우가 있습니다.
3. 뷰 테이블을 수정하면 원래 테이블의 값도 변경됩니다!
4. 뷰 테이블의 정보와 네비게이터
이것은 그냥
mysql > desc 뷰테이블이름;
이렇게 하면 데이터형을 알아볼수 잇는것을 말합니다.
댓글 없음:
댓글 쓰기