책 내용 질문하기
기본 모의고사 2회 4-3번 문제
도서
[2014] 컴퓨터활용능력 1급 실기(엑셀, 액세스 2007 사용자용)
페이지
298
조회수
154
작성일
2014-01-29
작성자
첨부파일

298쪽에 문제 4- 3 번에 최고매출거래처 쿼리를 작성하는 문제가 있습니다.

합계가 가장많은 거래처의 '거래처','상호','합계'로 이루어진 레코드를 찾는 문제인데요.

1.max함수를 사용해야겠다는 것은 알겠는데 조건절에 하위쿼리로 작성해야하는 이유를 모르겠습니다.

2.또한 하위쿼리에서 where = (select max(합계) from 업체별내역) 이라 되어있는데

where = max(합계) 가 왜??안되는지 모르겠습니다. 같은 테이블에서 조건을 찾는데 이렇게 해야 맞다고 생각했습니다.

실행해보면 where절에는 집계함수를 사용할 수 없다고 나옴니다. where절에는 그룹함수를 사용하지 못하는 것은

알고는 있습니다. 하지만 왜 사용할 수 없는지 깊게 알고 싶습니다. 알려주세요 .ㅠㅠㅠ

답변
2014-02-02 21:03:34

현재 만든 쿼리 내에서도

합계가 가장많은 거래처의 내용만 표시 하기 위한 것이므로 하위쿼리를 작성한 것입니다.

요약으로 최대값을 지정하면

그 필드안에서 최대값들을 계산하게 되는 것이지

최대값 하나만 표시하는 것은 아닙니다.

합계 필드에다가 하위 쿼리를 사용하는 이유는 '합계'의 값이 '합계가 최고인 값'하고 일치하는 레코드를 찾기 위해서입니다.

좋은 하루 되세요.

"
  • *
    2014-02-02 21:03:34

    현재 만든 쿼리 내에서도

    합계가 가장많은 거래처의 내용만 표시 하기 위한 것이므로 하위쿼리를 작성한 것입니다.

    요약으로 최대값을 지정하면

    그 필드안에서 최대값들을 계산하게 되는 것이지

    최대값 하나만 표시하는 것은 아닙니다.

    합계 필드에다가 하위 쿼리를 사용하는 이유는 '합계'의 값이 '합계가 최고인 값'하고 일치하는 레코드를 찾기 위해서입니다.

    좋은 하루 되세요.

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