INLINE VIEW
- FROM 절에서 사용하는 서브쿼리
- FROM 절에서 사용하는 서브쿼리의 결과는 테이블인 경우가 대부분이다.
- FROM절에서 사용한 서브쿼리의 SELECT절에 있는 칼럼들만 메인쿼리에서 사용할 수 있다.
ex. SELECT 칼럼1, 칼럼2
FROM (SELECT 칼럼1, 칼럼2 FROM 테이블명); ⇒ 칼럼1, 칼럼2 완벽일치
4. 메인쿼리에서 정렬과 별명 사용을 위해 서브쿼리에 대부분 별명을 붙인다.
→ 정렬은 쿼리 실행 순서가 가장 마지막이기 때문에 인라인뷰를 사용하여 정렬 순서를 앞으로 옮김
→ SELECT절에 칼럼 별명을 주는 인라인뷰를 넣어, WHERE(조건)절에서 칼럼 별명을 사용할 수 있게 만듦
(**오라클 조회 순서 FROM → WHERE → SELECT )
ROWNUM
: 해당 행의 조회 번호
- 조회 번호 1을 포함하는 범위는 조회 할 수 있다.
SELECT ROWNUM
FROM 테이블명
WHERE ROWNUM = 1;
SELECT ROWNUM
FROM 테이블명
WHERE ROWNUM BETWEEN 1 AND 4;
2. 조회 번호 1을 포함하지 않은 번호 검색은 바로 검색을 못한다
→ ROWNUM 칼럼에 별명을 주어 검색 가능하다.(인라인뷰활용)
→ SELECT 절에서 별명을 주고, WHERE 절에서 사용할 수 없기 때문에 FROM절에서 인라인뷰를 사용하여 가장 먼저 별명을 주고, 메인쿼리의 WHERE 절에서 그 별명을 이용하여 검색한다.)
SELECT a.rn
FROM (SELECT ROWNUM AS rn
FROM 테이블명 ) a
WHERE a.rn = 3;
SELECT a.rn
FROM (SELECT ROWNUM AS rn
FROM 테이블명 ) a
WHERE a.rn BETWEEN 3 AND 5;
'국비 > SQL' 카테고리의 다른 글
PL/SQL_프로시저/트리거/함수 (0) | 2021.09.21 |
---|---|
SQL_DDL, DML, DCL (0) | 2021.09.08 |
SQL_DDL (0) | 2021.09.07 |
댓글