프로그래머스-조건에 부합하는 중고거래 댓글 조회하기

이진우·2023년 7월 2일

mysql 연습

목록 보기
1/35

풀기 전 :
처음이다 보니 익숙하지 않았다.
어떤 걸 기준으로 join 할 것인지도 처음이라 이해되지 않았다. 두 테이블의 공통된 컬럼이 무엇인지 이해하자!

SELECT B.TITLE, B.BOARD_ID, R.REPLY_ID, R.WRITER_ID, R.CONTENTS, DATE_FORMAT(R.CREATED_DATE, '%Y-%m-%d') AS CREATED_DATE
FROM USED_GOODS_BOARD B
JOIN USED_GOODS_REPLY R ON B.BOARD_ID = R.BOARD_ID
WHERE YEAR(B.CREATED_DATE) = 2022 AND MONTH(B.CREATED_DATE) = 10
ORDER BY R.CREATED_DATE, B.TITLE;

이 문제를 통해서 정리할 수 있는 내용은 다음과 같다.

1)특정 칼럼을 기준으로 정렬하고 같은 경우, 다른 칼럼을 기준으로 정렬할때

ORDER BY R.CREATED_DATE, B.TITLE

이렇게 연속해서 사용한다.
위 문장의 뜻은 R.CREATED_DATE를 오름 차순으로 정렬하되 같은 경우 B.TITLE 기준으로 정렬 한다는 것을 뜻한다.

2)특정 년 특정 월을 만족해야 할때

WHERE YEAR(B.CREATED_DATE) = 2022 AND MONTH(B.CREATED_DATE) = 10

이렇게 하면 2022년 10월에 있는 것만 가져 올 수 있다.

3)날짜의 형식을 지정할 때

DATE_FORMAT(R.CREATED_DATE, '%Y-%m-%d') AS CREATED_DATE

위 문장은 특정 년 특정 달, 특정 일까지만 보여주고 시간을 생략할 수 있다.
profile
기록을 통해 실력을 쌓아가자

0개의 댓글