[SQL문제풀기] 조건에 부합하는 중고거래 댓글 조회하기

silver's avatar
Nov 26, 2024
[SQL문제풀기] 조건에 부합하는 중고거래 댓글 조회하기
 

문제

 

내가 틀린 정답

SELECT B.TITLE, B.BOARD_ID, R.REPLY_ID, R.WRITER_ID, R.CONTENTS , TO_CHAR(R.CREATED_DATE,'YYYY-MM-DD') FROM USED_GOODS_BOARD B LEFT JOIN USED_GOODS_REPLY R ON R.BOARD_ID = B.BOARD_ID WHERE TO_CHAR(B.CREATED_DATE,'YYYY-MM') = '2022-10' ORDER BY R.CREATED_DATE ASC,B.TITLE ASC;
<문제>
USED_GOODS_BOARD와 USED_GOODS_REPLY 테이블에서 2022년 10월에 작성된 게시글 제목, 게시글 ID, 댓글 ID, 댓글 작성자 ID, 댓글 내용, 댓글 작성일을 조회하는 SQL문을 작성해주세요. 결과는 댓글 작성일을 기준으로 오름차순 정렬해주시고, 댓글 작성일이 같다면 게시글 제목을 기준으로 오름차순 정렬해주세요.
→ 게시글에 댓글이 없어도 10월에 작성된 게시글이라면 조회하라고 이해하여 LEFT JOIN을 사용하여 댓글이 존재하지 않는 게시글도 출력하는 쿼리를 짰다.

정답

SELECT B.TITLE, B.BOARD_ID, R.REPLY_ID, R.WRITER_ID, R.CONTENTS , TO_CHAR(R.CREATED_DATE,'YYYY-MM-DD') FROM USED_GOODS_BOARD B RIGHT JOIN USED_GOODS_REPLY R ON R.BOARD_ID = B.BOARD_ID WHERE TO_CHAR(B.CREATED_DATE,'YYYY-MM') = '2022-10' ORDER BY R.CREATED_DATE ASC,B.TITLE ASC;
 
→ 정답은 “게시글 제목, 게시글 ID, 댓글 ID, 댓글 작성자 ID, 댓글 내용, 댓글 작성일”이 모두 존재하는 레코드 값들을 출력하는 것이었다.
 
💡
주어진 조건을 자세히 보고 문해력을 기르자!!!!
 
Share article

silver