< 링크 >
여기를 클릭하세요 (프로그래머스 고득점 Kit 106문제 모음)
여기를 클릭하세요 (1. 조건에 부합하는 중고거래 댓글 조회하기)
< 문제 >
USED_GOODS_BOARD와 USED_GOODS_REPLY 테이블에서 2022년 10월에 작성된 게시글 제목, 게시글 ID, 댓글 ID, 댓글 작성자 ID, 댓글 내용, 댓글 작성일을 조회하는 SQL문을 작성해주세요. 결과는 댓글 작성일을 기준으로 오름차순 정렬해주시고, 댓글 작성일이 같다면 게시글 제목을 기준으로 오름차순 정렬해주세요.
< 나의 풀이 >
1. 테이블 2개가 주어졌고, 문제를 살펴보니 공통된 컬럼이 보여서 inner join을 생각했다.
(다만, 공통된 컬럼이 있다고 해서 반드시 JOIN을 사용해야 하는 것은 아니다!)
2. 기본 구문을 작성했다.
SELECT a.TITLE, a.BOARD_ID, b.REPLY_ID, b.WRITER_ID, b.CONTENTS, DATE_FORMAT(b.CREATED_DATE, '%Y-%m-%d') AS CREATED_DATE
FROM USED_GOODS_BOARD a
JOIN USED_GOODS_REPLY b ON a.BOARD_ID = b.BOARD_ID
3. 이 때 select 문의 마지막에 date_format() 함수를 사용해야 한다.
그 이유는 문제에서 주어진 created_date 컬럼 데이터는
2022-10-01-**-**-** 처럼 불필요한 부분(**-**-**)이 있었기 때문에
date_format() 함수를 사용하여 전처리를 해야 하기 때문이다.
4. 그리고 주어진 문제에 맞게 where절과 order by절을 작성했다.
WHERE YEAR(a.CREATED_DATE) = '2022' AND MONTH(a.CREATED_DATE)='10'
ORDER BY b.CREATED_DATE ASC, a.TITLE ASC;

'IT > 프로그래머스 SQL 문제 풀어보기' 카테고리의 다른 글
| [SQL - SELECT] 5. 인기 있는 아이스크림 (0) | 2026.01.09 |
|---|---|
| [SQL - SELECT] 4. 12세 이하인 여자 환자 목록 출력하기 (0) | 2026.01.09 |
| [SQL - SELECT] 3. 흉부외과 또는 일반외과 의사 목록 출력하기 (0) | 2026.01.09 |
| [SQL - SELECT] 2. 과일로 만든 아이스크림 고르기 (0) | 2026.01.09 |
| 프로그래머스 SQL 문제 풀어보기 개요 (0) | 2026.01.08 |