2026_기본모의고사_06회
-3. A구간고객정보 쿼리 0/7
-쿼리 비교 X 3행의 1번째 값(오인영)가 정답(한남수)과 다릅니다.
요약 눌러서 조건으로쓰는 방법으로
결과 눌러보면 정답과 정렬이 바뀌는데 무슨 차이일까요?
안녕하세요.
첨부 화면의 차이는 [요약(Σ)]을 눌렀느냐 안 눌렀느냐입니다. 이번 문제처럼 단순히 구간="A"인 자료를 조회하고 좌석수를 내림차순으로 정렬하는 문제라면 요약을 누르면 안 됩니다.
아래쪽처럼 Σ를 누르면 Access가 내부적으로 대략 다음과 같은 SQL을 만듭니다.
GROUP BY 고객이름, 직업, 출발일자, 출발지, 도착지, 좌석수
HAVING 구간="A"
ORDER BY 좌석수 DESC;반면 요약을 사용하지 않으면 기본적으로
WHERE 구간="A"
ORDER BY 좌석수 DESC;형태가 됩니다.
두 쿼리가 같은 레코드를 보여줄 수는 있지만, GROUP BY가 들어가면 Access가 결과 레코드를 다시 그룹화하여 처리하기 때문에 좌석수가 같은 레코드끼리의 내부 순서가 달라질 수 있습니다.
예를 들어 좌석수가 같은 두 사람이 있다면
정답 : 한남수 → 오인영
요약 : 오인영 → 한남수처럼 바뀔 수 있습니다. 좌석수 내림차순 조건 자체는 둘 다 만족하지만, 동점인 행의 순서가 달라지는 것입니다.
그래서 채점에서
3행의 1번째 값(오인영)이 정답(한남수)과 다릅니다.
라고 나온 것입니다.
이번 문제에서는 다음과 같이 작성하면 됩니다.
구간
조건 : "A"
좌석수
정렬 : 내림차순Σ 요약은 누르지 않습니다.
쉽게 구분하면,
조건에 맞는 자료를 단순 조회
→ Σ 사용 X
합계, 평균, 개수, 최대/최소 등을 그룹별로 계산
→ Σ 사용 O입니다.
따라서 이번 경우는 구간을 요약의 ‘조건’으로 만드는 방식이 잘못된 것이고, 일반 쿼리 상태에서 조건 행에 "A"만 입력하는 것이 맞습니다.
즐거운 하루 되세요.
-
관리자2026-10-02 09:10:58
안녕하세요.
첨부 화면의 차이는 [요약(Σ)]을 눌렀느냐 안 눌렀느냐입니다. 이번 문제처럼 단순히
구간="A"인 자료를 조회하고좌석수를 내림차순으로 정렬하는 문제라면 요약을 누르면 안 됩니다.아래쪽처럼 Σ를 누르면 Access가 내부적으로 대략 다음과 같은 SQL을 만듭니다.
GROUP BY 고객이름, 직업, 출발일자, 출발지, 도착지, 좌석수 HAVING 구간="A" ORDER BY 좌석수 DESC;반면 요약을 사용하지 않으면 기본적으로
WHERE 구간="A" ORDER BY 좌석수 DESC;형태가 됩니다.
두 쿼리가 같은 레코드를 보여줄 수는 있지만,
GROUP BY가 들어가면 Access가 결과 레코드를 다시 그룹화하여 처리하기 때문에 좌석수가 같은 레코드끼리의 내부 순서가 달라질 수 있습니다.예를 들어 좌석수가 같은 두 사람이 있다면
정답 : 한남수 → 오인영 요약 : 오인영 → 한남수처럼 바뀔 수 있습니다.
좌석수 내림차순조건 자체는 둘 다 만족하지만, 동점인 행의 순서가 달라지는 것입니다.그래서 채점에서
3행의 1번째 값(오인영)이 정답(한남수)과 다릅니다.
라고 나온 것입니다.
이번 문제에서는 다음과 같이 작성하면 됩니다.
구간 조건 : "A" 좌석수 정렬 : 내림차순Σ 요약은 누르지 않습니다.
쉽게 구분하면,
조건에 맞는 자료를 단순 조회 → Σ 사용 X 합계, 평균, 개수, 최대/최소 등을 그룹별로 계산 → Σ 사용 O입니다.
따라서 이번 경우는
구간을 요약의 ‘조건’으로 만드는 방식이 잘못된 것이고, 일반 쿼리 상태에서 조건 행에"A"만 입력하는 것이 맞습니다.즐거운 하루 되세요.