2026_최종모의고사_05회
-4. 신규상품추가 쿼리 0/7
-쿼리 비교 X [신규상품추가] 쿼리 (INSERT INTO 대기상품 ( 상품코드, 상품명, 상품가격 ) SELECT 신규상품.상품코드, 신규상품.상품명, 신규상품.상품가격 FROM 신규상품 WHERE (((신규상품.상품코드) Like "P*" Or (신규상품.상품코드) Like "Z*")); )이 정답(INSERT INTO 대기상품 ( 상품코드, 상품명, 상품가격 ) SELECT 신규상품.상품코드, 신규상품.상품명, 신규상품.상품가격 FROM 신규상품 WHERE (((신규상품.상품코드) Like "P*")) OR (((신규상품.상품코드) Like "Z*")); )과 다릅니다.
머가 틀린지 확인 부탁드립니다....
안녕하세요.
이 경우에는 논리적으로 틀린 것이 아닙니다. 두 SQL은 조건을 묶는 괄호 위치만 다를 뿐, 의미는 같습니다.
질문자 쿼리:
WHERE (((신규상품.상품코드) Like "P*"
Or (신규상품.상품코드) Like "Z*"));정답:
WHERE (((신규상품.상품코드) Like "P*"))
OR (((신규상품.상품코드) Like "Z*"));둘 다 결국
상품코드가 P로 시작하거나
상품코드가 Z로 시작하는 레코드를 선택하므로 실행 결과는 동일합니다.
차이가 생긴 이유는 쿼리 디자인에서 조건을 입력한 방식 때문입니다. 질문자분은 같은 조건 행에
Like "P*" Or Like "Z*"처럼 한 번에 입력한 형태이고, 정답은
조건: Like "P*"
또는: Like "Z*"처럼 조건 행과 ‘또는’ 행을 나누어 입력한 형태입니다.
Access가 SQL로 저장할 때 이 차이가 괄호 구조에 반영되어 채점 프로그램이 서로 다른 SQL로 판정한 것으로 보입니다.
따라서 이번 경우는 쿼리 자체의 논리 오류라기보다 자동채점에서 SQL 구조 차이를 잡아낸 경우입니다. 시험 대비에서는 정답과 동일하게 디자인 그리드에서
조건 행 : Like "P*"
또는 행 : Like "Z*"로 나누어 입력하는 것이 가장 안전합니다.
즐거운 하루 되세요.
-
관리자2026-09-09 09:46:23
안녕하세요.
이 경우에는 논리적으로 틀린 것이 아닙니다. 두 SQL은 조건을 묶는 괄호 위치만 다를 뿐, 의미는 같습니다.
질문자 쿼리:
WHERE (((신규상품.상품코드) Like "P*" Or (신규상품.상품코드) Like "Z*"));정답:
WHERE (((신규상품.상품코드) Like "P*")) OR (((신규상품.상품코드) Like "Z*"));둘 다 결국
상품코드가 P로 시작하거나 상품코드가 Z로 시작하는 레코드를 선택하므로 실행 결과는 동일합니다.
차이가 생긴 이유는 쿼리 디자인에서 조건을 입력한 방식 때문입니다. 질문자분은 같은 조건 행에
Like "P*" Or Like "Z*"처럼 한 번에 입력한 형태이고, 정답은
조건: Like "P*" 또는: Like "Z*"처럼 조건 행과 ‘또는’ 행을 나누어 입력한 형태입니다.
Access가 SQL로 저장할 때 이 차이가 괄호 구조에 반영되어 채점 프로그램이 서로 다른 SQL로 판정한 것으로 보입니다.
따라서 이번 경우는 쿼리 자체의 논리 오류라기보다 자동채점에서 SQL 구조 차이를 잡아낸 경우입니다. 시험 대비에서는 정답과 동일하게 디자인 그리드에서
조건 행 : Like "P*" 또는 행 : Like "Z*"로 나누어 입력하는 것이 가장 안전합니다.
즐거운 하루 되세요.