책 내용 질문하기
온라인 채점 결과 문의
도서
2027 시나공 컴퓨터활용능력 1급 실기 기본서
페이지
0
조회수
9
작성일
2026-11-13
작성자
송*주
첨부파일

2027_실전모의고사_C형

-1. 판매현황생성 쿼리 0/7

-쿼리 비교 X [판매현황생성] 쿼리 (SELECT 판매종합.판매일, 판매종합.제품명, 판매종합.영업사원, Sum(판매종합.판매수량) AS 총판매량 FROM 판매종합 WHERE (((판매종합.지점명) Like "*" & [조회할 지점명의 일부를 입력] & "*")) GROUP BY 판매종합.판매일, 판매종합.제품명, 판매종합.영업사원; )이 정답(SELECT 판매종합.판매일, 판매종합.제품명, 판매종합.영업사원, Sum(판매종합.판매수량) AS 총판매량 INTO 조회지점판매현황 FROM 판매종합 GROUP BY 판매종합.판매일, 판매종합.제품명, 판매종합.영업사원, 판매종합.지점명 HAVING (((판매종합.지점명) Like "*" & [조회할 지점명의 일부를 입력] & "*")); )과 다릅니다.


요약을 왜 '조건'으로 하지 않고 '묶는 방법' 으로 하는지 궁금합니다.

답변
2026-11-13 09:28:55

안녕하세요.

이 문제에서는 지점명이 조회 결과에 표시되는 필드는 아니지만, 그룹화된 결과를 대상으로 조건을 적용해야 하므로 요약 행을 묶는 방법으로 두고 조건을 지정한 것입니다.

정답 SQL을 보면

GROUP BY 판매일, 제품명, 영업사원, 지점명

으로 먼저 지점명까지 그룹화한 뒤,

HAVING 지점명 Like "*...*"

조건을 적용하고 있습니다.

반면 요약 행을 조건으로 설정하면 SQL에서는 일반적으로 WHERE 절로 처리됩니다. WHERE는 집계가 이루어지기 전에 원본 레코드를 먼저 걸러내는 조건이고, HAVING은 집계·그룹화가 끝난 뒤 그룹에 적용하는 조건이라는 차이가 있습니다.

이 문제의 정답은 HAVING 방식으로 작성하도록 구성되어 있으므로 지점명의 요약을 묶는 방법으로 설정한 것입니다.

참고로 질문에 올려주신 작성 SQL에는 정답에 있는

INTO 조회지점판매현황

도 빠져 있으므로, 단순히 WHERE와 HAVING 차이뿐 아니라 테이블 만들기 쿼리 자체가 완성되지 않은 상태입니다.

즐거운 하루 되세요.

  • 관리자
    2026-11-13 09:28:55

    안녕하세요.

    이 문제에서는 지점명이 조회 결과에 표시되는 필드는 아니지만, 그룹화된 결과를 대상으로 조건을 적용해야 하므로 요약 행을 묶는 방법으로 두고 조건을 지정한 것입니다.

    정답 SQL을 보면

    GROUP BY 판매일, 제품명, 영업사원, 지점명

    으로 먼저 지점명까지 그룹화한 뒤,

    HAVING 지점명 Like "*...*"

    조건을 적용하고 있습니다.

    반면 요약 행을 조건으로 설정하면 SQL에서는 일반적으로 WHERE 절로 처리됩니다. WHERE는 집계가 이루어지기 전에 원본 레코드를 먼저 걸러내는 조건이고, HAVING은 집계·그룹화가 끝난 뒤 그룹에 적용하는 조건이라는 차이가 있습니다.

    이 문제의 정답은 HAVING 방식으로 작성하도록 구성되어 있으므로 지점명의 요약을 묶는 방법으로 설정한 것입니다.

    참고로 질문에 올려주신 작성 SQL에는 정답에 있는

    INTO 조회지점판매현황

    도 빠져 있으므로, 단순히 WHERE와 HAVING 차이뿐 아니라 테이블 만들기 쿼리 자체가 완성되지 않은 상태입니다.

    즐거운 하루 되세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.