DB/MYSQL

MYSQL VIEW

svdjcuwg4638 2023. 5. 13. 18:41

 table 대신 view 쓰는 이유

 

간혹 create table 말고 create view 하는 경우가 있습니다. 

테이블이랑 똑같은 view 라는 친구가 있는데 뭔지 알아봅시다. 

짧아서 글만 읽고 지나갑시다. 

 

 

view가 뭐냐면 

 

SELECT 로 찾은 행들이 너무나 마음에 들어서

테이블로 두고두고 저장해서 쓰고 싶습니까? 

그럼 실제 테이블로 저장해도 되겠지만 더 간단하게 view로 만들어둘 수도 있습니다. 

view는 가상의 테이블입니다. 테이블처럼 사용할 수 있습니다. 

 

CREATE VIEW 뷰이름 AS
SELECT 컬럼1, 컬럼2, ...
FROM 테이블명 

view 만드는 문법은 이렇습니다. 

SELECT로 찾은 행들을 view로 만들어달라는 코드입니다. 

CREATE VIEW view1 AS
SELECT *
FROM 테이블명1 INNER JOIN 테이블2
ON sales.id = product.id

 

view는 테이블이랑 똑같아서 SELECT INSERT UPDATE DELETE 전부 가능합니다. 

진짜인지 해봅시다. 

 

view 쓰는 이유 

 

1. 복잡하게 JOIN 해놓은 테이블들을 하나의 테이블 또는 view로 만들어두면 두고두고 재사용할 수 있어서 편리합니다. 

2. 근데 view는 실제 테이블이 아니라서 테이블만큼 하드용량을 많이 차지하지 않습니다.

3. table에 컬럼변경이 필요할 때 view를 만들어서 먼저 실험해볼 수 있습니다.

4. view 안에서 또 SELECT 해서 view를 만들 수도 있습니다. 너무 많은 중첩은 금지 

 

실은 열심해 JOIN해서 작성해놨던 SELECT 문을 쉽게 테이블형태로 재사용하고 싶을 때 view를 가장 많이 사용합니다.

그럴 때 사용하도록 합시다. 

 

(참고)

view는 가상테이블이라고 했지만 실제로 테이블이 생성되는게 아니라

SELECT 문법을 테이블형태로 눈속임해주는 것일 뿐입니다.