책 내용 질문하기
9번문제
도서
2018 시나공 정보처리기사 실기(산업기사 포함)
페이지
128
조회수
54
작성일
2018-06-14
작성자
탈퇴*원
첨부파일

이거 그룹을 답안처럼 주소로 묶어도 되지만

제생각엔 고객id로 묶어도 된다고 생각하는데

둘다 맞다면 실제문제에서는 보통 둘다맞게해주는건가요 아니면 기준을 제시하나요??

아니면 애초에 고객id로 그룹지으면 결과가 다른가요?

답변
2018-06-15 09:29:19

안녕하세요.

고객ID는 두 테이블에 모두 존재하므로

고객ID를 그룹의 대상으로 사용할 경우에는

회원관리.고객ID와 같이 테이블명을 함께 기술해야 합니다.

SELECT Left([주소],2) AS 지역, Sum(수량) AS 수량합계
FROM 주문현황, 회원관리
WHERE 주문현황.고객ID = 회원관리.고객ID
AND Month([주문날짜])=5
GROUP BY 회원관리.고객ID;

를 수행하면 오류가 발생합니다.

Left([주소],2)를 group의 기준으로 지정하지 않았기 때문입니다.

고객ID를 대상으로 그룹을 지정하려면

SELECT 회원관리.고객ID, Sum(수량) AS 수량합계
FROM 주문현황, 회원관리
WHERE 주문현황.고객ID = 회원관리.고객ID
AND Month([주문날짜])=5
GROUP BY 회원관리.고객ID;

와 같이 그룹 기준과 추출 속성명을 맞춰야 하는데, 이런 경우 결과가

고객ID 수량합계

20088 15

21278 21

로 추출됩니다.

오늘도 즐거운 하루 되세요.

  • *
    2018-06-15 09:29:19

    안녕하세요.

    고객ID는 두 테이블에 모두 존재하므로

    고객ID를 그룹의 대상으로 사용할 경우에는

    회원관리.고객ID와 같이 테이블명을 함께 기술해야 합니다.

    SELECT Left([주소],2) AS 지역, Sum(수량) AS 수량합계
    FROM 주문현황, 회원관리
    WHERE 주문현황.고객ID = 회원관리.고객ID
    AND Month([주문날짜])=5
    GROUP BY 회원관리.고객ID;

    를 수행하면 오류가 발생합니다.

    Left([주소],2)를 group의 기준으로 지정하지 않았기 때문입니다.

    고객ID를 대상으로 그룹을 지정하려면

    SELECT 회원관리.고객ID, Sum(수량) AS 수량합계
    FROM 주문현황, 회원관리
    WHERE 주문현황.고객ID = 회원관리.고객ID
    AND Month([주문날짜])=5
    GROUP BY 회원관리.고객ID;

    와 같이 그룹 기준과 추출 속성명을 맞춰야 하는데, 이런 경우 결과가

    고객ID 수량합계

    20088 15

    21278 21

    로 추출됩니다.

    오늘도 즐거운 하루 되세요.

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