안녕하세요 2권의 sql 문제 풀다 문의 남깁니다
15번 문제에
Select 상호,총액
From 거래내역
Group by 상호
Having max(총액);
으로 해도 답이 되나요?
아니라면 왜 where절만 가능한지도 알려주시면 감사하겠습니다;)
안녕하세요 길벗수험서 운영팀입니다.
having이 조건식으로 적혀있지 않으므로 오답입니다.
'상호'로 그룹을 지어도 튜플들의 상호가 모두 다르므로 튜플 하나가 그룹 하나가 되어버립니다.
예를 들어 select 상호, max(총액) from 거래내역 group by 상호; 로 출력한다면
이름 / 최대값
대명금속 / 275400
정금강업 / 948000
효신제조업 / 648000
....
이렇게 전부 출력되어 버리겠죠.
이 상태에서는 having으로 걸 수 있는 조건은 최대값이 얼마 이상이라거나, 이하라거나 하는 것 외에는 없습니다.
때문에 어쩔수 없이 하위 질의를 이용한 것이죠.
행복한 하루되세요 :)
-
관리자2022-05-06 01:48:22
안녕하세요 길벗수험서 운영팀입니다.
having이 조건식으로 적혀있지 않으므로 오답입니다.
'상호'로 그룹을 지어도 튜플들의 상호가 모두 다르므로 튜플 하나가 그룹 하나가 되어버립니다.
예를 들어 select 상호, max(총액) from 거래내역 group by 상호; 로 출력한다면
이름 / 최대값
대명금속 / 275400
정금강업 / 948000
효신제조업 / 648000
....
이렇게 전부 출력되어 버리겠죠.
이 상태에서는 having으로 걸 수 있는 조건은 최대값이 얼마 이상이라거나, 이하라거나 하는 것 외에는 없습니다.
때문에 어쩔수 없이 하위 질의를 이용한 것이죠.
행복한 하루되세요 :)