-
[프로그래머스]조건에 부합하는 중고거래 댓글 조회하기(LV.1)SQL 2023. 6. 12. 12:52
USED_GOODS_BOARD와 USED_GOODS_REPLY 테이블에서 2022년 10월에 작성된 게시글 제목, 게시글 ID, 댓글 ID, 댓글 작성자 ID, 댓글 내용, 댓글 작성일을 조회하는 SQL문을 작성해주세요. 결과는 댓글 작성일을 기준으로 오름차순 정렬해주시고, 댓글 작성일이 같다면 게시글 제목을 기준으로 오름차순 정렬해주세요.
첫번째 작성한 답
SELECT A.title AS TITLE, A.board_id AS BOARD_ID, B.reply_id AS REPLY_ID, B.writer_id AS WRITER_ID, B.contents as CONTENTS, DATE_FORMAT(B.created_date, '%Y-%m-%d') as CREATED_DATE FROM USED_GOODS_BOARD A, USED_GOODS_REPLY B WHERE B.CREATED_DATE BETWEEN ('2022-10-01') AND ('2022-10-31') ORDER BY B.CREATED_DATE, A.TITLE;
왜 틀렸을까?
질문하기를 확인해보니 10월에 작성된 '게시글'이라는 포인트를 확인했다.
SELECT A.title AS TITLE, A.board_id AS BOARD_ID, B.reply_id AS REPLY_ID, B.writer_id AS WRITER_ID, B.contents as CONTENTS, DATE_FORMAT(B.created_date, '%Y-%m-%d') as CREATED_DATE FROM USED_GOODS_BOARD A, USED_GOODS_REPLY B WHERE A.CREATED_DATE BETWEEN ('2022-10-01') AND ('2022-10-31') ORDER BY B.CREATED_DATE, A.TITLE;
아...
JOIN을 안했다;;
제일 중요한 걸 빼먹었다.
SELECT A.title AS TITLE, A.board_id AS BOARD_ID, B.reply_id AS REPLY_ID, B.writer_id AS WRITER_ID, B.contents as CONTENTS, DATE_FORMAT(B.created_date, '%Y-%m-%d') as CREATED_DATE FROM USED_GOODS_BOARD A INNER JOIN USED_GOODS_REPLY B ON A.BOARD_ID = B.BOARD_ID WHERE A.CREATED_DATE BETWEEN ('2022-10-01') AND ('2022-10-31') ORDER BY CREATED_DATE, TITLE;
JOIN 해주니까 바로 정답!
'SQL' 카테고리의 다른 글
[프로그래머스]과일로 만든 아이스크림 고르기(LV.1) (0) 2023.06.11 [프로그래머스]자동차 대여 기록에서 장기/단기 대여 구분하기(Lv.1) (0) 2023.04.17 [프로그래머스]Lv.1 문제 모음 (0) 2023.04.13 [프로그래머스]입양 시각 구하기(Lv.4) (0) 2023.04.12 [프로그래머스]우유와 요거트가 담긴 장바구니(Lv.4) (0) 2023.04.12