본문 바로가기
IT/Database

[MySQL] ANY, ALL 함수

by 성준하이 2023. 11. 27.
반응형
ANY 함수


컬럼명 비교연산자 ANY(값들 혹은 서브쿼리)
여러개의 비교값 중 하나라도 만족하면 true 반환
IN과 다른점은 비교 연산자를 사용한다는 점

비교 연산자와 ANY
> ANY : 최소값보다 크면
>= ANY : 최소값보다 크거나 같으면
< ANY : 최대값보다 작으면
<= ANY : 최대값보다 작거나 같으면
= ANY : IN과 같은 기능
= ANY : NOT IN과 같은 기능

 

Example
# 서브 쿼리의 AGE 중 최소값보다 큰 AGE를 가진 데이터 조회
SELECT *
FROM TEST
WHERE AGE > ANY(SELECT AGE FROM TEST WHERE ADDR='서울');

# AGE가 1보다 큰 데이터 조회
SELECT *
FROM TEST
WHERE AGE > ANY(1, 2, 3);

 

ALL 함수

컬럼명 비교연산자 ALL(값들 혹은 서브쿼리)
전체 값을 비교해서 모두 만족해야 true 반환
 
비교 연산자와 ALL
> ALL : 최대값보다 크면
>= ALL : 최대값보다 크거나 같으면
< ALL : 최소값보다 작으면
<= ALL : 최소값보다 작거나 같으면
= ALL : 서브 쿼리의 결과가 1건이면 괜찮지만 여러 건이면 오류가 발생
!= ALL : 서브 쿼리의 결과가 1건이면 괜찮지만 여러 건이면 오류가 발생
 

Example
# 서브 쿼리의 AGE 중 최대값보다 큰 AGE를 가진 데이터 조회
SELECT *
FROM TEST
WHERE AGE > ALL(SELECT AGE FROM TEST WHERE ADDR='서울');

# AGE가 3보다 큰 데이터 조회
SELECT *
FROM TEST
WHERE AGE > ALL(1, 2, 3);

 

반응형

댓글