다음은 SCORE 테이블에서 과목별 평균 점수보다 높은 점수를 받은 학생을 조회하는 SQL이다. 이 SQL에 사용된 서브쿼리에 대한 설명으로 가장 적절한 것은?
보기
SCORE 테이블
| SUBJECT | STUDENT | POINT |
|---|---|---|
| 수학 | S1 | 90 |
| 수학 | S2 | 70 |
| 영어 | S3 | 85 |
| 영어 | S4 | 65 |
SELECT S.*
FROM SCORE S
WHERE S.POINT > (SELECT AVG(POINT)
FROM SCORE
WHERE SUBJECT = S.SUBJECT);
- 1메인쿼리와 무관하게 단독으로 먼저 한 번만 실행되고, 그 결과를 메인쿼리가 재사용하는 독립(비연관) 서브쿼리이다.
- 2메인쿼리에서 처리 중인 각 행의 S.SUBJECT 값을 전달받아 수행되는 연관(상관) 서브쿼리이다.
- 3서브쿼리가 임시 집합(가상 테이블)처럼 사용되므로 FROM절의 인라인 뷰로 분류된다.
- 4AVG(POINT)라는 1행 1열의 단일 값을 반환하므로 메인쿼리와 참조 관계가 없는 단순 스칼라 서브쿼리이다.
꿈라CBT