단일행 서브쿼리
단일행 서브쿼리는 실행 결과가 단 하나의 행으로 나오는 서브쿼리다. 단일행 서브쿼리는 단일행 연산자를 사용하여 비교한다.
단일행 연산자
> | >= | = | <= | < | <> | ^= | != |
초과 | 이상 | 같음 | 이하 | 미만 | 같지않음 | 같지않음 | 같지않음 |
단일행 서브쿼리와 날짜형 데이터
단일행 서브쿼리는 서브쿼리 결과 값이 날짜(DATE) 자료형일 때도 사용할 수 있다. 예를 들어 EMP테이블에서 SCOTT보다 빨리 입사한 사원 목록을 조회하려면 다음과 같이 서브쿼리를 활용한 SELECT문을 작성할 수 있다.
SELECT *
FROM EMP
WHERE HIREDATE < (SELECT HIREDATE
FROM EMP
WHERE ENAME = 'SCOTT');
단일형 서브쿼리와 함수
서브쿼리에서 특정 함수를 사용한 결과 값이 하나일 떄 단일행 서브쿼리로서 사용가능하다. 예를 들어 20번 부서에 속한 사원 중 전체 사원의 평균 급여보다 높은 급여를 받는 사원 정보와 소속 부서 정보를 함께 조회해보자.
SELECT E.EMPNO, E.ENAME, E.JOB, E.SAL, D.DEPTNO, D.DNAME, D.LOC
FROM EMP E, DEPT D
WHERE E.DEPTNO = D.DEPTNO
AND E.DEPTNO = 20
AND E.SAL > (SELECT AVG(SAL) FROM EMP);
출처:Do it! 오라클로 배우는 데이터베이스 입문(저자:이지훈 출판사:이지스퍼블리싱)
'DB > Oracle' 카테고리의 다른 글
[서브쿼리] 다중열 서브쿼리/FROM절에 사용하는 서브쿼리와 WITH절 (0) | 2022.02.15 |
---|---|
[서브쿼리] 다중행 서브쿼리 (0) | 2022.02.15 |
[서브쿼리] 서브쿼리의 정의 (0) | 2022.02.14 |
[다중행 함수] 결과 값을 원하는 열로 묶어 출력하는 GROUP BY절 (0) | 2022.02.11 |
[다중행 함수] 하나의 열에 출력 결과를 담는 다중행 함수 (0) | 2022.02.10 |