본문 바로가기

프로그래머스(Oracle)

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

728x90

코드 힌트

1. 조인 활용

  • 두 테이블(USED_GOODS_BOARD, USED_GOODS_FILE)을 JOIN하여 관련 데이터를 결합합니다.
  • ON B.BOARD_ID = F.BOARD_ID 조건을 통해 각 게시물에 대한 파일 정보를 가져옵니다.

2. 조회수 최대값 조건

  • WHERE B.VIEWS = (SELECT MAX(VIEWS) FROM USED_GOODS_BOARD)를 사용하여 조회수가 가장 높은 게시물만 선택합니다.
  • 서브쿼리를 통해 가장 높은 조회수를 계산하고, 이를 사용하여 해당 게시물과 관련된 파일을 필터링합니다.

3. 파일 경로 생성

  • SELECT문에서 || 연산자를 사용하여 파일 경로를 생성합니다.
  • /home/grep/src/, BOARD_ID, FILE_ID, FILE_NAME, FILE_EXT를 결합하여 완전한 파일 경로를 만듭니다.

4. 정렬

  • ORDER BY F.FILE_ID DESC를 사용하여 결과를 파일 ID 기준으로 내림차순으로 정렬합니다.
  • 이로 인해 가장 최근에 추가된 파일이 먼저 표시됩니다.

 


정답은 더보기 클릭

더보기
SELECT '/home/grep/src/' || F.BOARD_ID || '/' || F.FILE_ID || F.FILE_NAME || F.FILE_EXT AS FILE_PATH -- 파일 경로 생성
  FROM USED_GOODS_BOARD B -- 게시판 테이블
  JOIN USED_GOODS_FILE F -- 파일 테이블
  ON B.BOARD_ID = F.BOARD_ID -- 게시판 ID를 기준으로 두 테이블을 조인
  WHERE B.VIEWS = (SELECT MAX(VIEWS) FROM USED_GOODS_BOARD) -- 조회수가 최대인 게시판을 필터링
  ORDER BY F.FILE_ID DESC -- 파일 ID 기준으로 내림차순 정렬
728x90