inblog logo
|
jjack1
    프로그래머스MySQL코딩테스트

    [프로그래머스] (MySQL) 64. 조건에 맞는 사용자와 총 거래금액 조회하기

    최재원's avatar
    최재원
    Jul 27, 2025
    [프로그래머스] (MySQL) 64. 조건에 맞는 사용자와 총 거래금액 조회하기
    💡

    문제 설명

    다음은 중고 거래 게시판 정보를 담은 USED_GOODS_BOARD 테이블과 중고 거래 게시판 사용자 정보를 담은 USED_GOODS_USER 테이블입니다. USED_GOODS_BOARD 테이블은 다음과 같으며 BOARD_ID, WRITER_ID, TITLE, CONTENTS, PRICE, CREATED_DATE, STATUS, VIEWS는 게시글 ID, 작성자 ID, 게시글 제목, 게시글 내용, 가격, 작성일, 거래상태, 조회수를 의미합니다.
    Column name
    Type
    Nullable
    BOARD_ID
    VARCHAR(5)
    FALSE
    WRITER_ID
    VARCHAR(50)
    FALSE
    TITLE
    VARCHAR(100)
    FALSE
    CONTENTS
    VARCHAR(1000)
    FALSE
    PRICE
    NUMBER
    FALSE
    CREATED_DATE
    DATE
    FALSE
    STATUS
    VARCHAR(10)
    FALSE
    VIEWS
    NUMBER
    FALSE
    USED_GOODS_USER 테이블은 다음과 같으며 USER_ID, NICKNAME, CITY, STREET_ADDRESS1, STREET_ADDRESS2, TLNO는 각각 회원 ID, 닉네임, 시, 도로명 주소, 상세 주소, 전화번호를 를 의미합니다.
    Column name
    Type
    Nullable
    USER_ID
    VARCHAR(50)
    FALSE
    NICKNAME
    VARCHAR(100)
    FALSE
    CITY
    VARCHAR(100)
    FALSE
    STREET_ADDRESS1
    VARCHAR(100)
    FALSE
    STREET_ADDRESS2
    VARCHAR(100)
    TRUE
    TLNO
    VARCHAR(20)
    FALSE
    💡

    문제

    USED_GOODS_BOARD와 USED_GOODS_USER 테이블에서 완료된 중고 거래의 총금액이 70만 원 이상인 사람의 회원 ID, 닉네임, 총거래금액을 조회하는 SQL문을 작성해주세요. 결과는 총거래금액을 기준으로 오름차순 정렬해주세요.

    예시

    USED_GOODS_BOARD 테이블이 다음과 같고
    BOARD_ID
    WRITER_ID
    TITLE
    CONTENTS
    PRICE
    CREATED_DATE
    STATUS
    VIEWS
    B0001
    zkzkdh1
    캠핑의자
    가벼워요 깨끗한 상태입니다. 2개
    25000
    2022-11-29
    SALE
    34
    B0002
    miyeon89
    벽걸이 에어컨
    엘지 휘센 7평
    100000
    2022-11-29
    SALE
    55
    B0003
    dhfkzmf09
    에어팟 맥스
    에어팟 맥스 스카이 블루 색상 판매합니다.
    450000
    2022-11-26
    DONE
    67
    B0004
    sangjune1
    파파야나인 포르쉐 푸쉬카
    예민하신분은 피해주세요
    30000
    2022-11-30
    DONE
    78
    B0005
    zkzkdh1
    애플워치7
    애플워치7 실버 스텐 45미리 판매합니다.
    700000
    2022-11-30
    DONE
    99
    USED_GOODS_USER 테이블이 다음과 같을 때
    USER_ID
    NICKNAME
    CITY
    STREET_ADDRESS1
    STREET_ADDRESS2
    TLNO
    cjfwls91
    점심만금식
    성남시
    분당구 내정로 185
    501호
    01036344964
    zkzkdh1
    후후후
    성남시
    분당구 내정로 35
    가동 1202호
    01032777543
    spdlqj12
    크크큭
    성남시
    분당구 수내로 206
    2019동 801호
    01087234922
    xlqpfh2
    잉여킹
    성남시
    분당구 수내로 1
    001-004
    01064534911
    dhfkzmf09
    찐찐
    성남시
    분당구 수내로 13
    A동 1107호
    01053422914
    SQL을 실행하면 다음과 같이 출력되어야 합니다.
    USER_ID
    NICKNAME
    TOTAL_SALES
    zkzkdh1
    후후후
    700000
     

    코드

    SELECT UU.USER_ID AS USER_ID, UU.NICKNAME AS NICKNAME, SUM(UB.PRICE) AS TOTAL_SALES FROM USED_GOODS_USER UU INNER JOIN USED_GOODS_BOARD UB ON UB.WRITER_ID = UU.USER_ID WHERE UB.STATUS = 'DONE' GROUP BY UU.USER_ID HAVING SUM(UB.PRICE) >= 700000 ORDER BY TOTAL_SALES;
    notion image
     
    Share article

    jjack1

    RSS·Powered by Inblog