기준

LEFT JOIN은 항상 users 행에서 시작합니다.

왼쪽 테이블의 회원 행은 결과에서 먼저 보존됩니다.

ON 조건

status = 'DELIVERED' 인 주문만 붙습니다.

조건은 오른쪽 orders 가 연결될 수 있는 범위만 좁힙니다.

결과

매칭이 실패하면 오른쪽 컬럼만 NULL 이 됩니다.

회원 행 제거가 아니라 주문 정보 비우기로 끝납니다.

회원(users)
orders 쪽에서 일어나는 일
최종 출력 행

김철수

왼쪽 기준 행이므로 결과에 남습니다.

주문이 있고 상태도 DELIVERED

ON 조건을 통과하므로 orders 값이 함께 연결됩니다.

매칭 성공
username = 김철수
order_id = 1
status = DELIVERED

이영희

회원 행은 유지되지만 주문 연결 여부는 별도로 판단됩니다.

주문은 있지만 DELIVERED 가 아님

조건에 맞는 주문으로는 취급되지 않아 조인이 실패합니다.

조건 불일치
username = 이영희
order_id = NULL
status = NULL

박민수

주문이 없어도 users 행 자체는 그대로 남습니다.

연결할 주문 자체가 없음

DELIVERED 여부를 검사할 대상이 없으므로 매칭도 없습니다.

매칭 대상 없음
username = 박민수
order_id = NULL
status = NULL
ON 절은 조인 대상을 고르는 단계입니다. 그래서 LEFT JOIN 에서는 조건에 맞는 주문이 없더라도 회원 행은 남고, 오른쪽 컬럼만 NULL 로 채워집니다.