p.428 쿼리 2번 문제에서,
1. "그 밖에는 빈 칸으로 표시하라"에 대해 switch(~,false,"") 이렇게 적었는데 오답인가요?
2. 그리고 switch식을 쓸때 [판매이윤총계] 대신에 sum([판매이윤])이라고 적었는데 오답인가요? 따로 문제에서 특정 함수식을 쓰라고 하지 않는 이상 아무것도 쓰지 않는게 정답인건가요? 아니면 문제에서 아무 언급이 없다면 임의로 함수식을 써도 상관은 없는건가요?
p.430 쿼리 5번 문제에서,
부가세 필드를 요약: 식 이 아닌 요약: 묶는방법으로 그대로 놔두어 났는데, 답지에서는 요약:식으로 나와서, 오답인가요? 참고로, 방식이 어떻든 쿼리 결과화면은 답과 동일하게 나왔습니다.
미리 답변 감사드립니다.
안녕하세요.
[428p]
두 질문을 나누어 보면 1번은 오답 가능성이 높고, 2번은 경우가 다릅니다.
Switch(..., False, "")는 ‘그 밖에는 빈 칸’을 구현하지 못합니다.Switch는 앞에서부터 조건이 True인 첫 번째 값을 반환하므로, 마지막의False는 절대로 참이 되지 않습니다.
예를 들어 다음과 같이 작성했다면,
Switch(
[판매이윤총계]>=100000, "인기상품",
[판매이윤총계]<=20000, "판매중지",
False, ""
)판매이윤총계가 50,000이면 앞의 두 조건도 False이고 마지막 조건도 False이므로 어느 조건도 만족하지 않아 Null을 반환합니다. 화면에서는 Null도 빈칸처럼 보여서 결과가 맞아 보였을 수 있습니다.
‘그 밖에는 빈 문자열’을 명시하려면 마지막 조건은
True, ""로 해야 합니다.
다만 교재 정답이 마지막 조건 자체를 생략했다면, 그것도 의도적으로 맞는 작성입니다. Switch는 아무 조건도 만족하지 않으면 Null을 반환하고, 보고서/쿼리에서는 이것도 빈칸처럼 표시되기 때문입니다.
따라서 정답이 예를 들어
Switch([판매이윤총계]>=100000,"인기상품",
[판매이윤총계]<=20000,"판매중지")라면 시험에서는 불필요하게 False,""를 추가하지 말고 정답 구조처럼 작성하는 것이 안전합니다. 특히 False,""는 ‘그 밖에’를 의미하는 조건이 아닙니다.
[판매이윤총계]대신Sum([판매이윤])을 사용하는 것은 무조건 틀렸다고 볼 수 없습니다.
예를 들어 첫 번째 계산 필드를
판매이윤총계: Sum([판매이윤])으로 만들었다면 비고에서
Switch([판매이윤총계]>=100000,"인기상품",
[판매이윤총계]<=20000,"판매중지")처럼 계산 필드 이름을 참조할 수도 있고,
Switch(Sum([판매이윤])>=100000,"인기상품",
Sum([판매이윤])<=20000,"판매중지")처럼 집계식을 직접 사용할 수도 있습니다.
문제에서 비고는 ‘판매이윤’의 총계를 기준으로 판단하라고 했을 뿐, 비고 계산에서 반드시 [판매이윤총계]를 참조하라고 지정하지 않았다면 Sum([판매이윤])으로 직접 계산하는 것도 논리적으로 성립할 수 있습니다.
다만 컴활 문제에서는 문제에서 특정 함수나 방법을 지정했으면 반드시 그것을 사용하고, 지정하지 않았다면 결과가 동일한 다른 식이 기능적으로 가능할 수 있습니다. 그렇다고 해서 아무것도 쓰지 않는 것이 원칙이라는 의미는 아닙니다.
이번 문제에서는 Switch 함수 이용이라고 명시했으므로 Switch는 반드시 사용해야 합니다. 반면 그 Switch 안에서 [판매이윤총계]를 참조할지 Sum([판매이윤])을 사용할지는 별도의 지시가 없다면 기능적으로 판단해야 합니다.
그리고 자동채점 프로그램은 정답식과 구조가 다르면 실제 결과가 같아도 오답으로 표시할 수 있으므로, 교재 학습 및 자동채점에서는 가능한 한 정답식과 동일하게 작성하는 것이 가장 안전합니다.
[430p]
이 경우에는 결과 화면이 같아도 요약: 묶는 방법과 요약: 식은 쿼리 구조가 다르므로, 자동채점에서는 오답으로 처리될 수 있습니다.
부가세가 예를 들어
부가세: IIf([매입단가]<=3000,[판매단가]*0.1,[판매단가]*0.2)처럼 계산된 필드라면, 이 필드는 그룹의 기준이 아니라 계산 결과를 표시하는 필드입니다. 따라서 요약 행에서는 **식**으로 두는 것이 맞습니다.
반대로 묶는 방법으로 두면 SQL에 해당 계산식이 GROUP BY 항목으로 들어갈 수 있습니다. 현재 데이터에서는 같은 부가세 값끼리 자연스럽게 묶여 결과가 우연히 동일하게 보일 수 있지만, 논리적으로는 “부가세 계산”이 아니라 “부가세 계산 결과를 그룹 기준으로 사용”하는 구조가 됩니다.
핵심은 다음처럼 구분하시면 됩니다.
- 그룹 기준 필드 →
묶는 방법 - Sum, Avg 같은 집계 결과를 이용한 계산 필드 →
식 - 단순 조건용 필드 → 보통
조건
따라서 이번 문제에서는 답지처럼 부가세의 요약을 식으로 설정하는 것이 맞고, 결과가 같더라도 묶는 방법으로 둔 상태는 자동채점에서 오답 처리될 수 있습니다.
즐거운 하루 되세요.
-
관리자2026-08-31 10:21:04
안녕하세요.
[428p]
두 질문을 나누어 보면 1번은 오답 가능성이 높고, 2번은 경우가 다릅니다.
Switch(..., False, "")는 ‘그 밖에는 빈 칸’을 구현하지 못합니다.Switch는 앞에서부터 조건이 True인 첫 번째 값을 반환하므로, 마지막의False는 절대로 참이 되지 않습니다.
예를 들어 다음과 같이 작성했다면,
Switch( [판매이윤총계]>=100000, "인기상품", [판매이윤총계]<=20000, "판매중지", False, "" )판매이윤총계가 50,000이면 앞의 두 조건도 False이고 마지막 조건도 False이므로 어느 조건도 만족하지 않아 Null을 반환합니다. 화면에서는 Null도 빈칸처럼 보여서 결과가 맞아 보였을 수 있습니다.
‘그 밖에는 빈 문자열’을 명시하려면 마지막 조건은
True, ""로 해야 합니다.
다만 교재 정답이 마지막 조건 자체를 생략했다면, 그것도 의도적으로 맞는 작성입니다.
Switch는 아무 조건도 만족하지 않으면 Null을 반환하고, 보고서/쿼리에서는 이것도 빈칸처럼 표시되기 때문입니다.따라서 정답이 예를 들어
Switch([판매이윤총계]>=100000,"인기상품", [판매이윤총계]<=20000,"판매중지")라면 시험에서는 불필요하게
False,""를 추가하지 말고 정답 구조처럼 작성하는 것이 안전합니다. 특히False,""는 ‘그 밖에’를 의미하는 조건이 아닙니다.[판매이윤총계]대신Sum([판매이윤])을 사용하는 것은 무조건 틀렸다고 볼 수 없습니다.
예를 들어 첫 번째 계산 필드를
판매이윤총계: Sum([판매이윤])으로 만들었다면 비고에서
Switch([판매이윤총계]>=100000,"인기상품", [판매이윤총계]<=20000,"판매중지")처럼 계산 필드 이름을 참조할 수도 있고,
Switch(Sum([판매이윤])>=100000,"인기상품", Sum([판매이윤])<=20000,"판매중지")처럼 집계식을 직접 사용할 수도 있습니다.
문제에서 비고는 ‘판매이윤’의 총계를 기준으로 판단하라고 했을 뿐,
비고계산에서 반드시[판매이윤총계]를 참조하라고 지정하지 않았다면Sum([판매이윤])으로 직접 계산하는 것도 논리적으로 성립할 수 있습니다.다만 컴활 문제에서는 문제에서 특정 함수나 방법을 지정했으면 반드시 그것을 사용하고, 지정하지 않았다면 결과가 동일한 다른 식이 기능적으로 가능할 수 있습니다. 그렇다고 해서 아무것도 쓰지 않는 것이 원칙이라는 의미는 아닙니다.
이번 문제에서는
Switch 함수 이용이라고 명시했으므로 Switch는 반드시 사용해야 합니다. 반면 그 Switch 안에서[판매이윤총계]를 참조할지Sum([판매이윤])을 사용할지는 별도의 지시가 없다면 기능적으로 판단해야 합니다.그리고 자동채점 프로그램은 정답식과 구조가 다르면 실제 결과가 같아도 오답으로 표시할 수 있으므로, 교재 학습 및 자동채점에서는 가능한 한 정답식과 동일하게 작성하는 것이 가장 안전합니다.
[430p]
이 경우에는 결과 화면이 같아도
요약: 묶는 방법과요약: 식은 쿼리 구조가 다르므로, 자동채점에서는 오답으로 처리될 수 있습니다.부가세가 예를 들어부가세: IIf([매입단가]<=3000,[판매단가]*0.1,[판매단가]*0.2)처럼 계산된 필드라면, 이 필드는 그룹의 기준이 아니라 계산 결과를 표시하는 필드입니다. 따라서 요약 행에서는 **
식**으로 두는 것이 맞습니다.반대로
묶는 방법으로 두면 SQL에 해당 계산식이GROUP BY항목으로 들어갈 수 있습니다. 현재 데이터에서는 같은 부가세 값끼리 자연스럽게 묶여 결과가 우연히 동일하게 보일 수 있지만, 논리적으로는 “부가세 계산”이 아니라 “부가세 계산 결과를 그룹 기준으로 사용”하는 구조가 됩니다.핵심은 다음처럼 구분하시면 됩니다.
- 그룹 기준 필드 →
묶는 방법 - Sum, Avg 같은 집계 결과를 이용한 계산 필드 →
식 - 단순 조건용 필드 → 보통
조건
따라서 이번 문제에서는 답지처럼
부가세의 요약을식으로 설정하는 것이 맞고, 결과가 같더라도묶는 방법으로 둔 상태는 자동채점에서 오답 처리될 수 있습니다.즐거운 하루 되세요.