책 내용 질문하기
1권 493쪽 2번 문제 질문
도서
2022 시나공 정보처리기사 필기
페이지
493
조회수
397
작성일
2022-04-04
작성자
탈퇴*원
첨부파일
1번 보기에서 매출액 평균이 1000 이하가 아니라 한 지점의 매출액이 1000 이하인 경우를 제외하고 나온 것의 평균을 구하는 것 아닌가요? 그러니까 2번이 맞는 설명이구요. 답이 1번이 되어야 하지 않나요?
답변
2022-04-06 09:53:33

안녕하세요 길벗수험서 운영팀입니다.

 

보기 1번은 해당 코드의 해설이 아닌 결과론적으로 봐야합니다.

where 문을 통해 매출액 1000 미만의 튜플들은 모두 제외되었고, 도시로 그룹이 지어졌으니 

도시별 지점들 평균은 1000 이하로 나올 수 없게 됩니다.

 

2번 보기는

만약 A 도시에 a지점 1100, b지점 1200, c지점 900 이 있는 경우 2번 보기의 말대로 한다면 결과로 A 도시와 a, b 지점의 평균이 출력되어야 합니다.

하지만 SQL문의 특성상 where문이 having보다 먼저 적용된다는 사실로 보면 A 도시에는 1000이하인 c지점이 having 전에 제외되기 때문에

having 조건을 체크할 때 A도시는 지점이 2개뿐인 도시가 되어 출력에 포함되지 않게 됩니다.

 

행복한 하루되세요 :)

  • 관리자
    2022-04-06 09:53:33

    안녕하세요 길벗수험서 운영팀입니다.

     

    보기 1번은 해당 코드의 해설이 아닌 결과론적으로 봐야합니다.

    where 문을 통해 매출액 1000 미만의 튜플들은 모두 제외되었고, 도시로 그룹이 지어졌으니 

    도시별 지점들 평균은 1000 이하로 나올 수 없게 됩니다.

     

    2번 보기는

    만약 A 도시에 a지점 1100, b지점 1200, c지점 900 이 있는 경우 2번 보기의 말대로 한다면 결과로 A 도시와 a, b 지점의 평균이 출력되어야 합니다.

    하지만 SQL문의 특성상 where문이 having보다 먼저 적용된다는 사실로 보면 A 도시에는 1000이하인 c지점이 having 전에 제외되기 때문에

    having 조건을 체크할 때 A도시는 지점이 2개뿐인 도시가 되어 출력에 포함되지 않게 됩니다.

     

    행복한 하루되세요 :)

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