책 내용 질문하기
온라인 채점 결과 문의
도서
2024 시나공 컴퓨터활용능력 1급 실기 총정리
페이지
0
조회수
69
작성일
2026-08-27
작성자
김*철
첨부파일

2024_최신기출문제_2023년상시02

-5. 수강료납부일생성 쿼리 0/5

-쿼리 비교 X [수강료납부일생성] 쿼리 (SELECT 회원.회원이름, DateAdd("m",1,[수강신청일]) AS 수강료납부일, 강좌.수강료 INTO 조회강좌납부일현황 FROM 강좌 INNER JOIN (회원 INNER JOIN 수강 ON 회원.회원번호 = 수강.회원번호) ON 강좌.강좌코드 = 수강.강좌코드 WHERE (((강좌.강좌이름) Like "*" & [강좌이름을 입력하세요] & "*")) ORDER BY DateAdd("m",1,[수강신청일]); )이 정답(SELECT 회원.회원이름, DateAdd("m",1,[수강신청일]) AS 수강료납부일, 강좌.수강료 INTO 조회강좌납부일현황 FROM 회원 INNER JOIN (강좌 INNER JOIN 수강 ON 강좌.강좌코드 = 수강.강좌코드) ON 회원.회원번호 = 수강.회원번호 WHERE (((강좌.강좌이름)=[강좌이름을 입력하세요])) ORDER BY DateAdd("m",1,[수강신청일]); )과 다릅니다.


왜 틀렸는지 잘 모르겠어서 문의 드려요

답변
2026-08-31 09:42:59

안녕하세요.

틀린 채점된 원인은 조인 순서가 아니라 조건식입니다.

작성하신 조건은

Like "*" & [강좌이름을 입력하세요] & "*"

이고, 정답은

=[강좌이름을 입력하세요]

입니다.

두 조건은 의미가 다릅니다.

  • =[강좌이름을 입력하세요]
    → 사용자가 입력한 강좌이름과 정확히 일치하는 강좌만 조회
  • Like "*" & [강좌이름을 입력하세요] & "*"
    → 입력한 문자열이 포함되어 있기만 하면 조회

예를 들어 사용자가 엑셀이라고 입력했을 때,

정답 조건:
엑셀          → 조회
고급엑셀      → 조회 안 됨

작성 조건:
엑셀          → 조회
고급엑셀      → 조회
엑셀기초      → 조회

처럼 결과가 달라질 수 있습니다.

따라서 문제에서 단순히 **“강좌이름을 입력받아 조회”**하도록 했고, Like, * 등을 사용하라는 지시가 없다면 정답처럼

[강좌이름을 입력하세요]

또는 SQL에서는

WHERE 강좌.강좌이름=[강좌이름을 입력하세요]

로 설정하는 것이 맞습니다.

한편 다음 두 부분의 조인 순서도 SQL 문자열은 다릅니다.

작성:

FROM 강좌 INNER JOIN
(회원 INNER JOIN 수강 ...)

정답:

FROM 회원 INNER JOIN
(강좌 INNER JOIN 수강 ...)

하지만 모두 INNER JOIN이고 연결 조건도 동일하므로 일반적으로 조회 결과 자체는 같을 수 있습니다. 자동 채점에서는 SQL 구조 차이까지 비교할 수 있지만, 이번 문제에서 기능적으로 분명하게 잘못된 부분은 Like "*...*"를 사용한 조건식입니다.

즉, 이 문제는 부분 일치가 아니라 정확히 일치하도록 조건을 수정하시면 됩니다.

즐거운 하루 되세요.

  • 관리자
    2026-08-31 09:42:59

    안녕하세요.

    틀린 채점된 원인은 조인 순서가 아니라 조건식입니다.

    작성하신 조건은

    Like "*" & [강좌이름을 입력하세요] & "*"

    이고, 정답은

    =[강좌이름을 입력하세요]

    입니다.

    두 조건은 의미가 다릅니다.

    • =[강좌이름을 입력하세요]
      → 사용자가 입력한 강좌이름과 정확히 일치하는 강좌만 조회
    • Like "*" & [강좌이름을 입력하세요] & "*"
      → 입력한 문자열이 포함되어 있기만 하면 조회

    예를 들어 사용자가 엑셀이라고 입력했을 때,

    정답 조건:
    엑셀          → 조회
    고급엑셀      → 조회 안 됨
    
    작성 조건:
    엑셀          → 조회
    고급엑셀      → 조회
    엑셀기초      → 조회

    처럼 결과가 달라질 수 있습니다.

    따라서 문제에서 단순히 **“강좌이름을 입력받아 조회”**하도록 했고, Like, * 등을 사용하라는 지시가 없다면 정답처럼

    [강좌이름을 입력하세요]

    또는 SQL에서는

    WHERE 강좌.강좌이름=[강좌이름을 입력하세요]

    로 설정하는 것이 맞습니다.

    한편 다음 두 부분의 조인 순서도 SQL 문자열은 다릅니다.

    작성:

    FROM 강좌 INNER JOIN
    (회원 INNER JOIN 수강 ...)

    정답:

    FROM 회원 INNER JOIN
    (강좌 INNER JOIN 수강 ...)

    하지만 모두 INNER JOIN이고 연결 조건도 동일하므로 일반적으로 조회 결과 자체는 같을 수 있습니다. 자동 채점에서는 SQL 구조 차이까지 비교할 수 있지만, 이번 문제에서 기능적으로 분명하게 잘못된 부분은 Like "*...*"를 사용한 조건식입니다.

    즉, 이 문제는 부분 일치가 아니라 정확히 일치하도록 조건을 수정하시면 됩니다.

    즐거운 하루 되세요.

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