2026_최신기출유형_03회
-1. 재시험일생성 쿼리 0/7
-쿼리 비교 X [재시험일생성] 쿼리 (SELECT 학생.학번, 학생.성명, DateAdd("d",[시험날짜],30) AS 재시험일, [성적]+10 AS 인정점수 INTO 재시험일관리 FROM 학생 INNER JOIN 성적 ON 학생.학번 = 성적.학번 WHERE (((성적.성적)<70)); )이 정답(SELECT 학생.학번, 학생.성명, DateAdd("d",30,[시험날짜]) AS 재시험일, [성적]+10 AS 인정점수 INTO 재시험일관리 FROM 학생 INNER JOIN 성적 ON 학생.학번 = 성적.학번 WHERE (((성적.성적)<70)); )과 다릅니다.
단순히 dateadd의 순서 차이인데, 이건 왜 틀렸다고 하는 건가요? 실제 시험장에서도 틀렸다고 할 것 같아서 질문드립니다.
안녕하세요.
이 경우는 단순한 순서 차이가 아니라 DateAdd 함수의 인수 순서가 잘못된 것입니다.
DateAdd의 형식은 다음과 같습니다.
DateAdd(간격, 더할 값, 기준 날짜)정답:
DateAdd("d",30,[시험날짜])은 시험날짜에 30일을 더한다는 뜻입니다.
반면 작성하신
DateAdd("d",[시험날짜],30)은 두 번째 인수에 날짜값을 넣고, 세 번째 인수에 30을 날짜처럼 넣은 형태라서 함수의 인수 역할 자체가 바뀐 것입니다. 따라서 같은 의미가 아닙니다.
즉, 이 문제는 자동 채점의 단순 문자열 비교 문제가 아니라 실제 함수 사용이 잘못된 경우이므로 시험장에서도 오답으로 처리될 수 있습니다.
핵심은 다음처럼 기억하시면 됩니다.
DateAdd("d", 30, [시험날짜])
→ [시험날짜]에 30일을 더함
즐거운 하루 되세요.
-
관리자2026-08-24 10:18:24
안녕하세요.
이 경우는 단순한 순서 차이가 아니라
DateAdd함수의 인수 순서가 잘못된 것입니다.DateAdd의 형식은 다음과 같습니다.DateAdd(간격, 더할 값, 기준 날짜)정답:
DateAdd("d",30,[시험날짜])은 시험날짜에 30일을 더한다는 뜻입니다.
반면 작성하신
DateAdd("d",[시험날짜],30)은 두 번째 인수에 날짜값을 넣고, 세 번째 인수에
30을 날짜처럼 넣은 형태라서 함수의 인수 역할 자체가 바뀐 것입니다. 따라서 같은 의미가 아닙니다.즉, 이 문제는 자동 채점의 단순 문자열 비교 문제가 아니라 실제 함수 사용이 잘못된 경우이므로 시험장에서도 오답으로 처리될 수 있습니다.
핵심은 다음처럼 기억하시면 됩니다.
DateAdd("d", 30, [시험날짜])
→ [시험날짜]에 30일을 더함즐거운 하루 되세요.