- 동적인 결과를 얻어야 하는 경우 / 구절의 순서를 바꿔야 하는 경우
--()안을 먼저 실행
SELECT * FROM
(SELECT * FROM MEMBERS ORDER BY NAME DESC)
WHERE ROWNUM BETWEEN 1 AND 10
- 서브쿼리가 격자형 데이터를 반환하는 경우 : FROM 절에 사용
SELECT * FROM
(SELECT * FROM MEMBERS ORDER BY NAME DESC)
WHERE ROWNUM BETWEEN 1 AND 10
- 서브쿼리가 단일 값을 반환하는 경우 : 비교연산에 사용
--동적인 값과 비교
SELECT * FROM MEMBERS
WHERE AGE > (SELECT AVG(AGE) FROM MEMBERS)
- 서브쿼리가 목록을 반환하는 경우 : 목록형 연산에 사용
SELECT * FROM MEMBERS WHERE AGE IN
(SELECT AVG(AGE) FROM MEMBERS GROUP BY ADDRESS)
'Database > Oracle' 카테고리의 다른 글
SEQUENCE TABLE (0) | 2017.02.23 |
---|---|
집계 함수 (0) | 2017.02.23 |
JOIN (0) | 2017.02.23 |
기타 함수 (0) | 2017.02.23 |
NULL 관련 함수 (0) | 2017.02.23 |