다음 [결과]를 얻기 위해 ㉠에 들어갈 연산자로 옳은 것은?[직원]사번… | [SQLD] SQL 개발자 기출유형 모의고사 3회 상세 페이지
1[SQLD] SQL 개발자 기출유형 모의고사 3회
다음 [결과]를 얻기 위해 ㉠에 들어갈 연산자로 옳은 것은?[직원]
| 사번 | 이름 | 부서 | 급여 |
|---|---|---|---|
| 1 | 강민 | 영업 | 300 |
| 2 | 고은 | 영업 | 450 |
| 3 | 문수 | 개발 | 500 |
| 4 | 배진 | 개발 | 200 |
| 5 | 신혜 | 인사 | 600 |
| 6 | 오현 | 인사 | 300 |
SELECT 이름
FROM 직원
WHERE 급여 ( ㉠ ) (SELECT 급여 FROM 직원
WHERE 부서 = '영업')
ORDER BY 이름;[결과]
| 이름 |
|---|
| 문수 |
| 신혜 |
1
= ANY
2
> ALL
3
NOT IN
4
< ANY
해설
영업 급여는 300과 450이고 결과는 이 둘보다 모두 큰 문수(500)·신혜(600)이므로 > ALL 이 맞다.
> ALL은 서브쿼리의 최댓값을 넘는 행,< ANY는 최댓값 미만인 행을 고른다.
- < ANY 는 450 미만인 강민·배진·오현을 반환한다.
- = ANY 는 IN 과 같아 급여가 300 또는 450 인 강민·고은·오현을 반환한다.
- NOT IN 은 300·450 이 아닌 문수·배진·신혜를 반환한다.
오류나 개정된 내용이 보이면 알려주세요