티스토리 뷰

it

오라클 조인(JOIN), 오라클 뷰(VIEW)

ITs Story biaos 2023. 4. 16. 23:45

JOIN – VIEW

Oracle에서 JOIN과 VIEW는 데이터베이스에서 데이터를 효율적으로 관리하는 데 중요한 역할을 합니다.

먼저 JOIN은 두 개 이상의 테이블을 연결하여 데이터를 추출하는데 사용되는 것으로, INNER JOIN, LEFT OUTER JOIN, RIGHT OUTER JOIN, FULL OUTER JOIN 등이 있습니다. JOIN을 사용하면 여러 테이블의 데이터를 하나의 결과 집합으로 결합하여 사용할 수 있습니다.

예를 들어, 고객 정보와 주문 정보가 저장된 두 개의 테이블이 있을 경우, JOIN을 사용하여 고객이 어떤 주문을 했는지 확인할 수 있습니다. 이를 위해서는 고객 정보와 주문 정보가 공통으로 사용하는 기본 키를 기준으로 JOIN을 수행해야 합니다.

두 번째로 VIEW는 데이터베이스에서 쉽게 데이터를 검색하고 수정하기 위해 사용되는 가상 테이블입니다. VIEW를 사용하면 여러 테이블에서 필요한 데이터만 추출하여 새로운 테이블처럼 사용할 수 있습니다. 또한, VIEW를 통해 데이터의 접근 권한을 제한하거나 복잡한 쿼리를 간소화할 수도 있습니다.

예를 들어, 여러 테이블에서 각각의 데이터를 추출하여 일일이 조인을 해야하는 복잡한 쿼리를 사용하지 않고, VIEW를 통해 필요한 데이터만 추출하여 간단하게 조회할 수 있습니다. 또한, VIEW를 사용하여 데이터베이스의 보안을 강화할 수 있습니다. VIEW를 통해 데이터에 대한 접근 권한을 부여하면, 사용자가 특정 테이블에 직접적으로 접근하는 것을 막을 수 있습니다.

VIEW의 사용 목적

ⓛ 테이블 자료에 대한 접근 제한(보안)

② 데이터의 구조 단순화

③ 사용자를 위한 단순한 인터페이스

④ 복잡한 질의문(SQL)을 저장

⑤ 뷰를 사용하지 않고는 처리될 수 없는 질의문을 표현

⑥ 테이블 구조 변경에 의한 영향으로부터 프로그램 분리

VIEW의 실행 원리

1. View의 SQL을 변경하여 View의 base 테이블을 액세 하는 동일한 문장으로 변환 (View Merge)

•View의 SQL을 View를 참조하는 SQL과 병합

•실행계획 상에 “VIEW” 라는 operation이 없음

2. View를 먼저 실행하여 데이터를 추출한 후, 테이블처럼 SQL에서 사용 (View No-Merge)

•WHERE 절에 기술된 조건을 View 안으로 포함해서 인식 가능

•실행계획 상에 “VIEW”라는 operation이 있음

View Merge가 일어날 수 없는 경우

•ROWNUM 을 포함

•Select List에 GROUP Functions 을 포함

•Set Operator 사용

•ORDER BY, GROUP BY, DISTINCT 사용

•CONNECT BY 절 사용

'it' 카테고리의 다른 글

오라클 테이블 삭제 DROP TABLE  (0) 2023.04.18
Oracle 데이터베이스(SQLPlus)  (0) 2023.04.17
HDLC 프로토콜, PPP프로토콜  (0) 2023.04.16
프로토콜의 기능  (0) 2023.04.15
BCD 코드와 3초과 코드  (0) 2023.03.22
댓글