다음 쿼리에서 WHERE와 HAVING이 각각 어떤 역할을 하는지 올바르게 설명한 것은?

과목: MySQL

문제 번호: 3169

medium
다음 쿼리에서 WHERE와 HAVING이 각각 어떤 역할을 하는지 올바르게 설명한 것은?
SELECT Employees.LastName, COUNT(Orders.OrderID) AS NumberOfOrders
FROM Orders
INNER JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID
WHERE LastName = 'Davolio' OR LastName = 'Fuller'
GROUP BY LastName
HAVING COUNT(Orders.OrderID) > 25;
A. WHERE는 직원 필터링, HAVING은 추가 직원 필터링을 합니다
B. WHERE는 직원 필터링, HAVING은 주문 수 조건을 적용합니다
C. WHERE와 HAVING 모두 주문 수 조건을 적용합니다
D. WHERE와 HAVING 모두 직원 필터링을 합니다

정답: B



⦁ WHERE 절의 역할:
⦁ 개별 레코드에 대한 조건 적용
LastName = 'Davolio' OR LastName = 'Fuller'로 특정 직원들만 선택
⦁ 그룹화 이전에 실행됩니다

⦁ HAVING 절의 역할:
⦁ 그룹화된 결과에 대한 조건 적용
COUNT(Orders.OrderID) > 25로 주문 수가 25개 초과인 그룹만 선택
⦁ 그룹화 이후에 실행됩니다

⦁ 결과: Davolio나 Fuller 중에서 25개 초과 주문을 처리한 직원만 표시됩니다

💡 학습 팁

이 문제를 포함한 MySQL 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.