학습용 기출·복원자료 분류 확인SQLD · 2025년 58회 SQL 기본 및 활용 · 24번
다음 조인(JOIN) 문법 중 실행 시 에러가 발생하는 것은?
1
SELECT * FROM T1 NATURAL JOIN T2 ON T1.ID = T2.ID;
정답 근거NATURAL JOIN은 이름이 같은 컬럼을 자동으로 조인 조건으로 쓰기 때문에, 별도의 ON 절을 기술하면 에러가 발생한다. 이를 문항 조건에 적용하면 ‘SELECT * FROM T1 NATURAL JOIN T2 ON T1.ID = T2.ID;’을 선택한다. 따라서 1번 보기 ‘SELECT * FROM T1 NATURAL JOIN T2 ON T1.ID = T2.ID;’의 적용 여부를 문제 조건과 대조해야 한다.
2
SELECT * FROM T1 JOIN T2 USING (ID);
오답 이유‘SELECT * FROM T1 JOIN T2 USING (ID);’ 구문은 ‘SELECT * FROM T1 NATURAL JOIN T2 ON T1.ID = T2.ID;’과 실행 결과나 적용 조건이 다르다. NATURAL JOIN은 이름이 같은 컬럼을 자동으로 조인 조건으로 쓰기 때문에, 별도의 ON 절을 기술하면 에러가 발생한다. 이를 문항 조건에 적용하면 ‘SELECT * FROM T1 NATURAL JOIN T2 ON T1.ID = T2.ID;’을 선택한다. 따라서 2번 보기 ‘SELECT * FROM T1 JOIN T2 USING (ID);’의 적용 여부를 문제 조건과 대조해야 한다.
3
SELECT * FROM T1 JOIN T2 ON T1.ID = T2.ID;
오답 이유‘SELECT * FROM T1 JOIN T2 ON T1.ID = T2.ID;’ 구문은 ‘SELECT * FROM T1 NATURAL JOIN T2 ON T1.ID = T2.ID;’과 실행 결과나 적용 조건이 다르다. NATURAL JOIN은 이름이 같은 컬럼을 자동으로 조인 조건으로 쓰기 때문에, 별도의 ON 절을 기술하면 에러가 발생한다. 이를 문항 조건에 적용하면 ‘SELECT * FROM T1 NATURAL JOIN T2 ON T1.ID = T2.ID;’을 선택한다. 따라서 3번 보기 ‘SELECT * FROM T1 JOIN T2 ON T1.ID = T2.ID;’의 적용 여부를 문제 조건과 대조해야 한다.
4
SELECT * FROM T1, T2 WHERE T1.ID = T2.ID;
오답 이유‘SELECT * FROM T1, T2 WHERE T1.ID = T2.ID;’ 구문은 ‘SELECT * FROM T1 NATURAL JOIN T2 ON T1.ID = T2.ID;’과 실행 결과나 적용 조건이 다르다. NATURAL JOIN은 이름이 같은 컬럼을 자동으로 조인 조건으로 쓰기 때문에, 별도의 ON 절을 기술하면 에러가 발생한다. 이를 문항 조건에 적용하면 ‘SELECT * FROM T1 NATURAL JOIN T2 ON T1.ID = T2.ID;’을 선택한다. 따라서 4번 보기 ‘SELECT * FROM T1, T2 WHERE T1.ID = T2.ID;’의 적용 여부를 문제 조건과 대조해야 한다.
ANSWER & EXPLANATION
정답 1번
핵심 판단은 1번 ‘SELECT * FROM T1 NATURAL JOIN T2 ON T1.ID = T2.ID;’입니다. NATURAL JOIN은 이름이 같은 컬럼을 자동으로 조인 조건으로 쓰기 때문에, 별도의 ON 절을 기술하면 에러가 발생한다. 이를 문항 조건에 적용하면 ‘SELECT * FROM T1 NATURAL JOIN T2 ON T1.ID = T2.ID;’을 선택한다.