2025_기본모의고사_03회
-5. 지역별달성률 쿼리 0/7
-쿼리 비교 X [지역별달성률] 쿼리 (SELECT 지역.지역명, 지역.평균목표매출량, Avg(매출관리.매출수량) AS 평균매출량, [평균매출량]/[평균목표매출량] AS 달성률 FROM 지역 INNER JOIN 매출관리 ON 지역.지역코드 = 매출관리.지역코드 WHERE (((지역.지역코드) Like "*[3-5]")) GROUP BY 지역.지역명, 지역.평균목표매출량, [평균매출량]/[평균목표매출량]; )이 정답(SELECT 지역.지역명, 지역.평균목표매출량, Avg(매출관리.매출수량) AS 평균매출량, [평균매출량]/[평균목표매출량] AS 달성률 FROM 지역 INNER JOIN 매출관리 ON 지역.지역코드 = 매출관리.지역코드 WHERE (((지역.지역코드) Like "*[3-5]")) GROUP BY 지역.지역명, 지역.평균목표매출량; )과 다릅니다.
다음과 같이 나왔는데、 왜 제 답의 마지막에 where절이 추가되어 답과 다른건지 이해할 수가 없습니다。
안녕하세요.
오답 원인은 달성률 계산식을 GROUP BY에 포함시킨 것입니다.
작성한 SQL:
GROUP BY 지역.지역명, 지역.평균목표매출량,
[평균매출량]/[평균목표매출량]
정답:
GROUP BY 지역.지역명, 지역.평균목표매출량
달성률은 이미
[평균매출량]/[평균목표매출량]
처럼 집계 결과인 평균매출량을 이용한 계산 필드입니다. 따라서 별도로 묶는 방법에 포함시키면 안 됩니다.
쿼리 디자인에서는 달성률 필드의 요약을 ‘식(Expression)’으로 설정해야 합니다.
즉,
지역명→ 묶는 방법평균목표매출량→ 묶는 방법평균매출량→ 평균달성률→ 식
으로 설정하면 정답 SQL처럼 됩니다.
핵심은 **집계값을 이용해 계산한 필드는 묶는 방법이 아니라 식**으로 설정한다는 점입니다.
-
관리자2026-08-08 20:32:10
안녕하세요.
오답 원인은
달성률계산식을 GROUP BY에 포함시킨 것입니다.작성한 SQL:
GROUP BY 지역.지역명, 지역.평균목표매출량, [평균매출량]/[평균목표매출량]정답:
GROUP BY 지역.지역명, 지역.평균목표매출량달성률은 이미[평균매출량]/[평균목표매출량]처럼 집계 결과인 평균매출량을 이용한 계산 필드입니다. 따라서 별도로
묶는 방법에 포함시키면 안 됩니다.쿼리 디자인에서는
달성률필드의 요약을 ‘식(Expression)’으로 설정해야 합니다.즉,
지역명→ 묶는 방법평균목표매출량→ 묶는 방법평균매출량→ 평균달성률→ 식
으로 설정하면 정답 SQL처럼 됩니다.
핵심은 **집계값을 이용해 계산한 필드는
묶는 방법이 아니라식**으로 설정한다는 점입니다.