다음 테이블에 대해, 모든 사원들의 부서(dno) 평균 급여(salar… | [경찰간부후보생 데이터베이스론] 23년 1회차 기출문제 상세 페이지
1[경찰간부후보생 데이터베이스론] 23년 1회차
다음 테이블에 대해, 모든 사원들의 부서(dno) 평균 급여(salary)가 3,000,000원 이상인 부서를 검색하는 SQL 명령문이다. 밑줄 친 ㉠, ㉡에 가장 적절한 것은?
SELECT dno, AVG( salary ) AS avgsal FROM EMPLOYEE ㉠ dno ㉡ AVG( salary ) >= 3000000 ; |
㉠ ㉡
1
WHERE AND
2
WHERE HAVING
3
GROUP BY AND
4
GROUP BY HAVING
해설
㉠은 GROUP BY, ㉡은 HAVING이다.
부서별로 묶으려면 GROUP BY가 필요하고, AVG 같은 집계 결과에 거는 조건은 HAVING으로 쓴다.
- WHERE와 AND: WHERE로는 그룹을 만들 수 없고 AND는 절을 시작하지 못한다.
- WHERE와 HAVING: WHERE dno는 조건이 아니며 그룹도 만들어지지 않는다.
- GROUP BY와 AND: AND는 단독으로 집계 조건 절을 시작할 수 없다.
오류나 개정된 내용이 보이면 알려주세요