2026_최신기출유형_05회
-5. 가산점조회 쿼리 0/7
-쿼리 비교 X [가산점조회] 쿼리 (SELECT 부서.부서명, 사원.이름, 사원.년차, 직무평가.직무역량, 직무평가.행동역량, Switch([년차]<=3,[직무역량]*0.1,[년차]<=6,[직무역량]*0.2,[년차]>6,[직무역량]*0.3) AS 가산점 FROM 부서 INNER JOIN (사원 INNER JOIN 직무평가 ON 사원.사번 = 직무평가.사번) ON 부서.부서코드 = 사원.부서코드 GROUP BY 부서.부서명, 사원.이름, 사원.년차, 직무평가.직무역량, 직무평가.행동역량, Switch([년차]<=3,[직무역량]*0.1,[년차]<=6,[직무역량]*0.2,[년차]>6,[직무역량]*0.3) HAVING (((부서.부서명) Like "*" & [부서명의 일부를 입력하시오] & "*")) ORDER BY Switch([년차]<=3,[직무역량]*0.1,[년차]<=6,[직무역량]*0.2,[년차]>6,[직무역량]*0.3) DESC; )이 정답(SELECT 부서.부서명, 사원.이름, 사원.년차, 직무평가.직무역량, 직무평가.행동역량, Switch([년차]<=3,[직무역량]*0.1,[년차]<=6,[직무역량]*0.2,[년차]>6,[직무역량]*0.3) AS 가산점 FROM 부서 INNER JOIN (사원 INNER JOIN 직무평가 ON 사원.사번 = 직무평가.사번) ON 부서.부서코드 = 사원.부서코드 WHERE (((부서.부서명) Like "*" & [부서명의 일부를 입력하시오] & "*")) ORDER BY Switch([년차]<=3,[직무역량]*0.1,[년차]<=6,[직무역량]*0.2,[년차]>6,[직무역량]*0.3) DESC; )과 다릅니다.
안녕하세요.
이번 오답 원인은 요약(Σ) 기능을 켜서 GROUP BY와 HAVING이 생긴 것입니다.
작성한 쿼리에는
GROUP BY ...
HAVING 부서.부서명 Like ...
이 들어가 있고, 정답은
WHERE 부서.부서명 Like ...
만 있습니다.
이 문제는 Sum, Avg, Count 같은 집계 함수가 전혀 없기 때문에 요약 기능을 사용할 필요가 없습니다.
따라서 쿼리 디자인에서 Σ 요약을 끄고, 부서명 조건에
Like "*" & [부서명의 일부를 입력하시오] & "*"
만 지정하면 됩니다.
핵심은:
집계 함수가 없으면 보통 요약 기능 사용 X
단순 검색 조건은WHERE로 처리
이번에는 결과가 비슷하게 나올 수 있어도 SQL 구조가 달라 자동 채점에서 오답 처리된 것입니다.
즐거운 하루 되세요.
-
관리자2026-08-10 09:38:33
안녕하세요.
이번 오답 원인은 요약(Σ) 기능을 켜서
GROUP BY와HAVING이 생긴 것입니다.작성한 쿼리에는
GROUP BY ... HAVING 부서.부서명 Like ...이 들어가 있고, 정답은
WHERE 부서.부서명 Like ...만 있습니다.
이 문제는
Sum,Avg,Count같은 집계 함수가 전혀 없기 때문에 요약 기능을 사용할 필요가 없습니다.따라서 쿼리 디자인에서 Σ 요약을 끄고,
부서명조건에Like "*" & [부서명의 일부를 입력하시오] & "*"만 지정하면 됩니다.
핵심은:
집계 함수가 없으면 보통 요약 기능 사용 X
단순 검색 조건은WHERE로 처리이번에는 결과가 비슷하게 나올 수 있어도 SQL 구조가 달라 자동 채점에서 오답 처리된 것입니다.
즐거운 하루 되세요.