2026_최신기출유형_10회
-1. 정리대상처리 쿼리 0/7
-쿼리 비교 X [정리대상처리] 쿼리 (UPDATE 창고 SET 창고.비고 = "※ 창고정리대상" WHERE (((창고.창고코드) Not In (select 창고코드 from 제품 where 생산일자 between #2018-9-1# and #2020-12-31#))); )이 정답(UPDATE 창고 SET 창고.비고 = "※ 창고정리대상" WHERE (((창고.창고코드) Not In (select 창고코드 from 제품 where 생산일자 between #2018-09-01# and #2020-12-31#))); )과 다릅니다.
결과는 동일하게 나왔는데 어디 쿼리 구문이 오답인지 모르겠습니다.
안녕하세요.
이번 경우에는 쿼리의 논리가 틀린 것이 아니라 날짜 상수의 표기 형식 차이 때문에 자동채점에서 다르게 인식된 것으로 보는 것이 맞습니다.
작성하신 부분은
#2018-9-1#정답은
#2018-09-01#입니다.
Access에서는 일반적으로 두 값 모두 같은 날짜인 2018년 9월 1일로 해석되므로, 실제 쿼리 실행 결과는 동일하게 나올 수 있습니다.
즉,
Between #2018-9-1# And #2020-12-31#과
Between #2018-09-01# And #2020-12-31#은 기능적으로 같은 조건입니다.
따라서 이번 채점 결과는 날짜를 09, 01처럼 두 자리로 표기했는지 여부까지 SQL 문자열로 비교해서 발생한 자동채점 차이로 볼 수 있습니다.
시험 대비에서는 교재 정답처럼 날짜를
#2018-09-01#형태로 맞춰 작성하는 것이 가장 안전합니다.
결론적으로 현재 쿼리의 검색 조건 자체는 잘못되지 않았고, #2018-9-1#과 #2018-09-01#의 표기 차이 때문에 채점 프로그램에서 X가 나온 것으로 보입니다.
즐거운 하루 되세요.
-
관리자2026-08-31 10:23:23
안녕하세요.
이번 경우에는 쿼리의 논리가 틀린 것이 아니라 날짜 상수의 표기 형식 차이 때문에 자동채점에서 다르게 인식된 것으로 보는 것이 맞습니다.
작성하신 부분은
#2018-9-1#정답은
#2018-09-01#입니다.
Access에서는 일반적으로 두 값 모두 같은 날짜인 2018년 9월 1일로 해석되므로, 실제 쿼리 실행 결과는 동일하게 나올 수 있습니다.
즉,
Between #2018-9-1# And #2020-12-31#과
Between #2018-09-01# And #2020-12-31#은 기능적으로 같은 조건입니다.
따라서 이번 채점 결과는 날짜를
09,01처럼 두 자리로 표기했는지 여부까지 SQL 문자열로 비교해서 발생한 자동채점 차이로 볼 수 있습니다.시험 대비에서는 교재 정답처럼 날짜를
#2018-09-01#형태로 맞춰 작성하는 것이 가장 안전합니다.
결론적으로 현재 쿼리의 검색 조건 자체는 잘못되지 않았고,
#2018-9-1#과#2018-09-01#의 표기 차이 때문에 채점 프로그램에서 X가 나온 것으로 보입니다.즐거운 하루 되세요.