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
- 그래프 이론
- 누적합
- join
- 다시
- 크루스칼
- 플로이드-워셜
- 트리
- 그리디
- 해시
- DFS
- 우선순위큐
- 시뮬레이션
- BFS
- GROUP BY
- 분할정복
- 서브쿼리
- 에라토스테네스의 체
- 구현
- 재귀
- 브루트포스
- 다익스트라
- 투포인터
- DP
- 그래프 탐색
- 다이나믹프로그래밍
- MST
- 백트래킹
- 수학
- 다이나믹 프로그래밍
- 자료구조
Archives
- Today
- Total
기록하고 까먹지 말기
(SQL) 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기 본문
날짜 : 2023. 10. 07
사용 언어 : oracle
문제
코드
-- 조회수가 가장 높은 중고거래 게시물에 대한 첨부파일 경로를 조회
-- 첨부파일 경로는 FILE ID를 기준으로 내림차순 정렬
-- 기본적인 파일경로는 /home/grep/src/ -> 기본경로/게시글ID/파일ID/파일이름/확장자
-- 게시글 ID를 기준으로 디렉토리가 구분되고, 파일이름은 파일 ID, 파일 이름, 파일 확장자로 구성되도록 출력
SELECT '/home/grep/src/'||B.BOARD_ID||'/'||B.FILE_ID||B.FILE_NAME||B.FILE_EXT AS FILE_PATH
FROM (
SELECT *
FROM (
SELECT *
FROM USED_GOODS_BOARD
ORDER BY VIEWS DESC
)
WHERE ROWNUM < 2) A JOIN
USED_GOODS_FILE B ON A.BOARD_ID = B.BOARD_ID
ORDER BY B.FILE_ID DESC
;
풀이
- 서브쿼리를 사용해 조회수가 가장 많은 중고거래 게시물의 테이블을 추출한다.
- 그 다음 USED_GOODS_FILE 테이블과 조인
- SELECT문에서는 각 조건에 맞추어 문자열을 붙여나간다.
- 마지막에 FILE_ID 내림차순으로 정렬하면 완료
알게된 점
- 리뷰 하나에 여러개의 파일이 있고, 거기서 정렬 조건이 있다는 것을 간과했었다.
참고 사이트
-
'전공 > 프로그래머스' 카테고리의 다른 글
합승 택시 요금 (0) | 2023.10.09 |
---|---|
양과 늑대 (0) | 2023.10.08 |
(SQL) 그룹별 조건에 맞는 식당 목록 출력하기 (0) | 2023.10.06 |
무인도 여행 (0) | 2023.10.06 |
쿼드압축 후 개수 세기 (0) | 2023.10.05 |