참치코더의 꿈 메모장

Oracle / 프로그래머스 - 조회수가 가장 많은 중고거래 게시판의 첨부 파일 조회하기 본문

Oracle

Oracle / 프로그래머스 - 조회수가 가장 많은 중고거래 게시판의 첨부 파일 조회하기

참치깡 2026. 1. 26. 00:50
728x90

 

1
2
3
4
5
6
7
8
9
10
11
12
13
SELECT '/home/grep/src' || '/' ||
        f.BOARD_ID || '/' ||
        FILE_ID || 
        FILE_NAME || 
        FILE_EXT AS FILE_PATH
FROM USED_GOODS_FILE f
JOIN USED_GOODS_BOARD b
  ON f.BOARD_ID = b.BOARD_ID
WHERE b.VIEWS = (
    SELECT MAX(VIEWS)
    FROM USED_GOODS_BOARD
)
ORDER BY FILE_ID DESC;
cs

 

 

- 테이블에서 조회수가 가장 높은 중고거래 게시물에 대한 첨부파일 경로를 조회하는 SQL을 작성하는 문제이다.

- 2개의 테이블에 각각의 정보가 존재하므로 해당 테이블들을 1개로 묶어서 조회하기 위해 JOIN ON 을 사용하여 

- 각각의 BOARD_ID로 해당 테이블들을 묶어 주었다.

 

- 그 이후에 각각의 테이블에 존재하는 BOARD_ID , FILE_ID , FILE_NAME, FILE_EXT 를 꺼내서 하나의 문자열로 

- 연결해 주었으며 해당 값을 AS를 사용해 이름을 FILE_PATH로 지정해 주었다.

 

- 문제에서 조회수가 가장 높은 게시물은 하나만 존재한다고 했으므로, 각 views 값에 서브쿼리를 이용하여 max 함수를

  사용하면, 각 컬럼당 조회수가 높은 값을 얻을 수 있다. 

 

- 마지막으로 FILE_ID 값을 기준으로 내림차순 해준다면, 문제의 정답을 얻을 수 있다. ^^

 

실행 결과 일부 내용 발췌

728x90
Comments