LEFT OUTER JOIN 사용하여 데이터 조회하기

Yeoonnii·2022년 11월 8일
0

Oracle

목록 보기
7/10

아래와 같이 게시글을 출력하는 쿼리문에서 Likes 테이블에 해당 데이터가 없는경우 나머지 데이터들의 결과가 출력이 되지 않는다

SELECT BB.BNO, BB.TITLE, BB.CONTENT, BB.HIT, BB.REGDATE, M.NICKNAME, L.LCNT
FROM (SELECT * FROM BOARD B WHERE BNO = #{bno}) BB
        INNER JOIN MEMBER M ON BB.USERID = M.USERID
        INNER JOIN (
        	SELECT BNO, COUNT(USERID) LCNT 
            FROM LIKES GROUP BY BNO
        ) L ON L.BNO = BB.BNO    

INNER JOIN 사용하여 조회하기

LIKES 데이터가 있는경우

LIKES 데이터가 없는경우 (board는 존재한다)

LIKES 테이블에 해당 데이터가 없는경우에도 LIKES 테이블을 제외한 나머지 정보들의 조회 결과가 필요한 경우 INNER JOINLEFT OUTER JOIN으로 변경해주어 사용한다

LEFT OUTER JOIN 사용하여 조회하기

LIKES 데이터가 있는경우

LIKES 데이터가 없는경우

BOARD 데이터가 없는경우

0개의 댓글