본문 바로가기
MySql

MySQL 왼쪽 조인은 행이없는 경우에도 null을 반환합니다.

by 베이스 공부 2020. 11. 7.
반응형

내 테이블 :

cat 테이블에는 id, name 이 있습니다.

user 테이블에는 id, uname, catid 가 있습니다.

샘플 데이터 :
고양이 테이블

사용자 테이블

내 질문은

SELECT cat.id, cat.name 
FROM cat LEFT JOIN user 
  ON cat.id = user.catid
WHERE user.id = 2

id 가 0 인 카테고리가 없으므로 행이 없습니다.
행이 없으면 결과로 NULL 또는 0을 원합니다.

어떻게하나요?

 

해결 방법

 

왼쪽 조인을 오른쪽 조인으로 바꾸거나 테이블을 교체해야합니다.

SELECT cat.id, cat.name
  FROM user LEFT JOIN cat ON cat.id = user.catid
 WHERE user.id = 2

예제 데이터를 사용하면 결과로 null을 포함하는 행이 제공됩니다.

 

참조 페이지 https://stackoverflow.com/questions/3709229

 

 

반응형

댓글