다음 RIGHT JOIN 쿼리의 실행 결과에서 반환될 레코드 개수와 특징을 예측해보세요.

과목: MySQL

문제 번호: 3143

hard
다음 RIGHT JOIN 쿼리의 실행 결과에서 반환될 레코드 개수와 특징을 예측해보세요.
SELECT Orders.OrderID, Employees.LastName, Employees.FirstName
FROM Orders
RIGHT JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID
ORDER BY Orders.OrderID;

주어진 데이터:
⦁ Orders 테이블: 3개 레코드 (EmployeeID: 7, 3, 8)
⦁ Employees 테이블: 3개 레코드 (EmployeeID: 1, 2, 3)
A. 3개 레코드가 반환되며, 모든 레코드에 OrderID 값이 있습니다
B. 3개 레코드가 반환되며, 1개 레코드만 OrderID 값이 있고 나머지는 NULL입니다
C. 6개 레코드가 반환되며, 모든 조합이 표시됩니다
D. 1개 레코드만 반환되며, 매칭되는 EmployeeID 3만 표시됩니다

정답: B



⦁ RIGHT JOIN은 오른쪽 테이블(Employees)의 모든 레코드를 반환하므로 3개 레코드가 나옵니다

⦁ Employees 테이블의 EmployeeID와 Orders 테이블의 EmployeeID를 비교합니다:
⦁ EmployeeID 1: Orders에 없음 → OrderID는 NULL
⦁ EmployeeID 2: Orders에 없음 → OrderID는 NULL
⦁ EmployeeID 3: Orders에 있음 → OrderID 10309 표시

⦁ 결과적으로 3개 레코드 중 1개만 실제 주문 정보를 가지고, 2개는 NULL 값을 가집니다

ORDER BY Orders.OrderID에 의해 NULL 값들이 먼저 나오고, 실제 값이 뒤에 표시됩니다

💡 학습 팁

이 문제를 포함한 MySQL 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.