VIEW는 하나의 테이블로부터 특정 컬럼들만 보여주거나 특정 조건에 맞는 레코드들만 보여주는데 사용될 수 있다. 두개 이상의 테이블을 조인하여 하나의 VIEW로 사용자에게 보여준다.
하나의 테이블에서 VIEW 사용
테이블 중 일부 컬럼만 보여주고 싶거나, WHERE절로 필터링한 데이터만 보여주고 싶을 때 사용한다. 테이블에서 어떤 조건을 제외한 테이블을 보여줄 때 사용한다.
복수의 테이블에서 VIEW를 사용
복수의 테이블을 조인하여 부분적인 데이터를 보여준다.
VIEW의 특징 실제로 데이터를 저장하지 않고, 일부분만 보여주는데 중점을 둔다. 뷰 기반 테이블을 수정이 가능하다. 복잡한 SQL작업을 단순화하려는 것이다. 작성된 쿼리를 쉽게 다시 사용할 수 있다. 뷰의 데이터를 수정할 경우 실제 데이터도 같이 변경된다. 뷰로 생성된 가상 테이블에도 데이터를 삽입할 수 있다. (JOIN, UNION, Sub Query 등)으로 만들어진 뷰에서 데이터를 삽입할 수 없다. ORDER BY절을 사용할 수 없다.
VIEW의 키워드 : 두 테이블에서 ~가 가장 높은 첨부파일의 경로를 조회하는 SQL문을 작성하시오
SELECT CONCAT('/home/grep/src/',B.BOARD_ID,'/', B.FILE_ID, B.FILE_NAME, B.FILE_EXT) AS FILE_PATH
FROM USED_GOODS_BOARD AS A JOIN USED_GOODS_FILE AS B ON A.BOARD_ID = B.BOARD_ID
WHERE A.VIEWS = (SELECT MAX(A1.VIEWS)
FROM USED_GOODS_BOARD AS A1)
ORDER BY B.FILE_ID DESC