IN, ANY, ALL, EXISTS

인삼주·2023년 5월 4일
0

DB 모델링과 OracleSQL

목록 보기
13/16

IN

WHERE 칼럼 IN('값1','값2')
:범위에 포함되는 것 조회

ex) 사원의 급여가 400에서 500사이에 포함되고 부서번호가 20 또는 30인 사원의 이름, 급여와 부서번호를출력, 이름순(오름차순)으로 출력하시오.

SELECT ENAME 사원명, SAL 급여, DEPTNO 부서번호
FROM EMP
WHERE (SAL BETWEEN 400 AND 500) AND (DEPTNO IN('20','30'))
ORDER BY ENAME ASC;

NOT IN

WHERE 칼럼 NOT IN ('값1','값2',...)
:범위에 포함되지 않는 것 조회


ANY/SOME

다수의 비교값 중 한개라도 만족하면 true

IN과 다른점은 비교 연산자를 사용한다는 점


ALL

결과값이 모두 조건을 만족하면 true 반환



EXISTS와 NOT EXISTS

: 서브쿼리를 사용하여 특정 조건을 만족하는 레코드가 있는지 확인하는데 사용되는 비교 연산자

EXISTS(서브쿼리)

서브쿼리 조건에 만족하는 모든 레코드를 출력

SELECT 컬럼
FROM 테이블
WHERE EXISTS (서브쿼리);

NOT EXISTS(서브쿼리)

서브쿼리 조건에 만족하는 레코드를 제외하고 출력

SELECT 컬럼
FROM 테이블
WHERE NOT EXISTS (서브쿼리);

0개의 댓글