_Han_
나의 개발 노트
_Han_
  • 분류 전체보기 (272)
    • 데이터 엔지니어링 (29)
    • 인프라 (3)
    • 추천시스템 (11)
    • 코딩테스트 (146)
    • 부트캠프 회고 (15)
    • 회고 (4)
    • 자격증 (1)
    • 파이썬 프로그래밍 (6)
    • 통계 (2)
    • Git (21)
    • 유니티2D (33)

최근 글

반응형
hELLO · Designed By 정상우.
_Han_

나의 개발 노트

[코딩테스트] 프로그래머스 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기 MySQL
코딩테스트

[코딩테스트] 프로그래머스 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기 MySQL

2023. 3. 13. 09:18
반응형

https://school.programmers.co.kr/learn/courses/30/lessons/164671

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

WITH TOP1 AS (
    SELECT BOARD_ID
    FROM USED_GOODS_BOARD
    ORDER BY VIEWS DESC
    LIMIT 1

) 

SELECT CONCAT_WS('/','/home/grep/src',FILE.BOARD_ID,
        CONCAT(FILE_ID,
        FILE_NAME,
        FILE_EXT)) AS FILE_PATH
FROM TOP1
JOIN USED_GOODS_FILE AS FILE
ON TOP1.BOARD_ID = FILE.BOARD_ID
ORDER BY FILE_ID DESC

먼저 WITH문에서 USED_GOODS_BOARD 테이블에서 가장 조회수가 높은 게시물의 BOARD_ID컬럼을 추출하고 가상테이블 TOP1 을 만들었습니다.

 

위에서 만든 가상 테이블 TOP1과 USED_GOODS_FILE 테이블을 BOARD_ID 컬럼을 기준으로 JOIN하여

가장 조회수가 높은 게시물의 첨부파일 정보를 추출하였습니다.

 

SELECT문에서 CONCAT_WS, CONCAT 함수를 사용하여 첨부파일 경로를 만들었습니다.

 

마지막으로 ORDER BY문에서 FILE_ID를 기준으로 내림차순 정렬하여 결과를 반환합니다.

반응형

'코딩테스트' 카테고리의 다른 글

[코딩테스트] 프로그래머스 조건에 맞는 사용자 정보 조회하기 MySQL  (0) 2023.03.14
[코딩테스트] 프로그래머스 조건에 맞는 사용자와 총 거래금액 조회하기 MySQL  (0) 2023.03.13
[코딩테스트] 프로그래머스 조건에 부합하는 중고거래 상태 조회하기 MySQL  (0) 2023.03.11
[코딩테스트] 프로그래머스 조건에 부합하는 중고거래 댓글 조회하기 MySQL  (0) 2023.03.10
[코딩테스트] 프로그래머스 자동차 대여 기록 별 대여 금액 구하기 MySQL  (0) 2023.03.09
    '코딩테스트' 카테고리의 다른 글
    • [코딩테스트] 프로그래머스 조건에 맞는 사용자 정보 조회하기 MySQL
    • [코딩테스트] 프로그래머스 조건에 맞는 사용자와 총 거래금액 조회하기 MySQL
    • [코딩테스트] 프로그래머스 조건에 부합하는 중고거래 상태 조회하기 MySQL
    • [코딩테스트] 프로그래머스 조건에 부합하는 중고거래 댓글 조회하기 MySQL
    _Han_
    _Han_
    학습한 것을 기록합니다.

    티스토리툴바