Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 물만날물고기
- 데이터분석솔루션
- sorted()
- 프로그래머스
- sklearn
- 나임
- power-bi
- pandas
- KNIME 데이터 분석
- 판다스
- Revising the Select Query II
- SQL
- MYSQL
- 리스트
- colab
- python
- 코딩테스트
- 물 만날 물고기
- 태블로
- HackerRank
- Tableau
- leetcode
- 해커랭크
- 파이썬
- DB
- 데이터프레임
- pyinstaller
- 텐서플로우
- KNIME
- 코랩
Archives
- Today
- Total
물 만날 물고기
[프로그래머스/SQL] - (1) 조건에 부합하는 중고거래 댓글 조회하기 본문
🔍 예상 검색어
더보기
# 조건에 부합하는 중고거래 댓글 조회하기
# 프로그래머스
# SQL
해당 포스팅은 프로그래머스 SQL "조건에 부합하는 중고거래 댓글 조회하기" 문제 풀이내용을 정리하였습니다.
▶ 문제
코딩테스트 연습 - 조건에 부합하는 중고거래 댓글 조회하기 | 프로그래머스 스쿨
▶ 정답(1) : MONTH(B.CREATED_DATE) = 10
-- 코드를 입력하세요
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 AS B
INNER JOIN USED_GOODS_REPLY AS R
ON B.BOARD_ID = R.BOARD_ID
WHERE MONTH(B.CREATED_DATE) = 10
ORDER BY R.CREATED_DATE ASC, B.TITLE ASC;
▶ 정답(2) : WHERE B.CREATED_DATE like '2022-10%'
-- 코드를 입력하세요
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 AS B
INNER JOIN USED_GOODS_REPLY AS R
ON B.BOARD_ID = R.BOARD_ID
-- WHERE MONTH(B.CREATED_DATE) = 10
WHERE B.CREATED_DATE like '2022-10%'
ORDER BY R.CREATED_DATE ASC, B.TITLE ASC;
▶ 정답(3) : WHERE DATE_FORMAT(B.CREATED_DATE, '%Y-%m') = '2022-10'
-- 코드를 입력하세요
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 AS B
INNER JOIN USED_GOODS_REPLY AS R
ON B.BOARD_ID = R.BOARD_ID
-- WHERE MONTH(B.CREATED_DATE) = 10
-- WHERE B.CREATED_DATE like '2022-10%'
WHERE DATE_FORMAT(B.CREATED_DATE, '%Y-%m') = '2022-10'
ORDER BY R.CREATED_DATE ASC, B.TITLE ASC;
▶ 정답(4) : WHERE SUBSTR(B.CREATED_DATE,1,7) = '2022-10'
-- 코드를 입력하세요
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 AS B
INNER JOIN USED_GOODS_REPLY AS R
ON B.BOARD_ID = R.BOARD_ID
-- WHERE MONTH(B.CREATED_DATE) = 10
-- WHERE B.CREATED_DATE like '2022-10%'
-- WHERE DATE_FORMAT(B.CREATED_DATE, '%Y-%m') = '2022-10'
WHERE SUBSTR(B.CREATED_DATE,1,7) = '2022-10'
ORDER BY R.CREATED_DATE ASC, B.TITLE ASC;
▶ 정답(5) : WHERE B.CREATED_DATE BETWEEN ('2022-10-01') AND ('2022-10-31')
-- 코드를 입력하세요
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 AS B
INNER JOIN USED_GOODS_REPLY AS R
ON B.BOARD_ID = R.BOARD_ID
-- WHERE MONTH(B.CREATED_DATE) = 10
-- WHERE B.CREATED_DATE like '2022-10%'
-- WHERE DATE_FORMAT(B.CREATED_DATE, '%Y-%m') = '2022-10'
-- WHERE SUBSTR(B.CREATED_DATE,1,7) = '2022-10'
WHERE B.CREATED_DATE BETWEEN ('2022-10-01') AND ('2022-10-31')
ORDER BY R.CREATED_DATE ASC, B.TITLE ASC;
▶ 총평
해당 문제에서는 INNER JOIN 방법, DATE_FORMAT 함수, 정렬 조건이 2개 이상일 때 처리 방법에 대해 확인이 필요하였고, 2022년 10월에 작성된 방법을 조회하는 조건에서 다양한 방법이 사용될 수 있음을 확인하였습니다.
-- 코드를 입력하세요
/*
USED_GOODS_BOARD AS B
B.BOARD_ID, B.WRITER_ID, B.TITLE, B.CONTENTS, B.PRICE, B.CREATED_DATE, B.STATUS, B.VIEWS
*/
/*
USED_GOODS_REPLY AS R
R.REPLY_ID, R.BOARD_ID, R.WRITER_ID, R.CONTENTS, R.CREATED_DATE
*/
/*
RESULT
B.TITLE, B.BOARD_ID, R.REPLY_ID, R.WRITER_ID, R.CONTENTS, R.CREATED_DATE
*/
/* 문제 분석
(1) 결과 컬럼 : B.TITLE, B.BOARD_ID, R.REPLY_ID, R.WRITER_ID, R.CONTENTS, R.CREATED_DATE
(2) 조회 기준 : 2022년 10월 작성된 게시글
(3) 댓글 작성일을 기준으로 오름차순 : R.CREATED_DATE
(4) 게시글 제목 기준으로 오름차순 : B.TITLE
(5) 주의사항 : CREATED_DATE 포맷
*/
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 AS B
INNER JOIN USED_GOODS_REPLY AS R
ON B.BOARD_ID = R.BOARD_ID
WHERE DATE_FORMAT(B.CREATED_DATE, "%Y-%m") = "2022-10"
ORDER BY R.CREATED_DATE ASC, B.TITLE ASC
▼ 참고자료
▼ 복습/히스토리
더보기
No. | 복습일 | 비고 |
1 | 2023년 06월 24일 - 09시 12분 | - |
2 | ||
3 | ||
4 | ||
5 |
- 작성코드
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 AS B
JOIN USED_GOODS_REPLY AS R
ON B.BOARD_ID = R.BOARD_ID
WHERE DATE_FORMAT(B.CREATED_DATE, "%Y-%m") = "2022-10"
ORDER BY R.CREATED_DATE ASC, B.TITLE ASC;
'DB & SQL > 프로그래머스' 카테고리의 다른 글
[프로그래머스/SQL] - (5) 조건에 맞는 사용자와 총 거래금액 조회하기 (0) | 2023.06.23 |
---|---|
[프로그래머스/SQL] - (76) 모든 레코드 조회하기 (0) | 2023.06.23 |
[프로그래머스/SQL] - (40) 3월에 태어난 여성 회원 목록 출력하기 (0) | 2023.06.23 |
[프로그래머스/SQL] - (6) 특정 옵션이 포함된 자동차 리스트 구하기 (0) | 2023.06.23 |
[프로그래머스/SQL] - (2) 조건에 부합하는 중고거래 상태 조회하기 (0) | 2023.06.22 |