[프로그래머스] 상품을 구매한 회원 비율 구하기

2024. 9. 20. 23:10·알고리즘/SQL

 

Question

 

USER_INFO 테이블과 ONLINE_SALE 테이블에서 2021년에 가입한 전체 회원들 중 상품을 구매한 회원수와 상품을 구매한 회원의 비율(=2021년에 가입한 회원 중 상품을 구매한 회원수 / 2021년에 가입한 전체 회원 수)을 년, 월 별로 출력하는 SQL문을 작성해주세요. 상품을 구매한 회원의 비율은 소수점 두번째자리에서 반올림하고, 전체 결과는 년을 기준으로 오름차순 정렬해주시고 년이 같다면 월을 기준으로 오름차순 정렬해주세요.

 

 

Pseudocode

 

 

  1. 선택할 열 지정:
    • SALES_DATE에서 연도와 월을 추출하여 YEAR 및 MONTH라는 별칭을 부여합니다.
    • 고유한 구매자 수 (DISTINCT USER_ID)를 세어 PURCHASED_USERS라는 별칭을 부여합니다.
    • 2021년에 가입한 사용자 수로 나눈 구매자 비율을 계산하여 PURCHASED_RATIO라는 별칭을 부여합니다.
  2. 테이블 조인:
    • ONLINE_SALE 테이블을 USER_INFO 테이블과 USER_ID를 기준으로 조인합니다.
  3. 필터링 조건:
    • JOINED 필드가 '2021%'로 시작하는 레코드만 선택합니다.
  4. 그룹화:
    • 연도와 월별로 결과를 그룹화합니다.
  5. 정렬:
    • 연도와 월에 따라 오름차순으로 정렬합니다.

 

 

 

Code

 

SELECT
    YEAR (SALES_DATE) YEAR, 
    MONTH (SALES_DATE) MONTH, 
    COUNT (DISTINCT a.USER_ID) PURCHASED_USERS, 
    Round(COUNT (DISTINCT a.USER_ID)/(SELECT COUNT (*) FROM USER_INFO WHERE JOINED LIKE '2021%'),     1) AS PUCHASED_RATIO
FROM ONLINE_SALE a JOIN USER_INFO b
ON a.USER_ID = b.USER_ID
WHERE JOINED LIKE '2021%'
GROUP BY 1, 2
ORDER BY 1, 2

 

'알고리즘 > SQL' 카테고리의 다른 글

[프로그래머스] 특정 형질을 가지는 대장균 찾기  (0) 2024.09.20
[프로그래머스] 부모의 형질을 모두 가지는 대장균 찾기  (0) 2024.09.20
[프로그래머스] FrontEnd 개발자 찾기  (0) 2024.09.20
[프로그래머스] 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기  (1) 2024.09.20
[프로그래머스] 자동차 대여 기록 별 대여 금액 구하기  (0) 2024.09.20
'알고리즘/SQL' 카테고리의 다른 글
  • [프로그래머스] 특정 형질을 가지는 대장균 찾기
  • [프로그래머스] 부모의 형질을 모두 가지는 대장균 찾기
  • [프로그래머스] FrontEnd 개발자 찾기
  • [프로그래머스] 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기
Noaahhh
Noaahhh
  • Noaahhh
    노아
    Noaahhh
  • 전체
    오늘
    어제
    • 분류 전체보기 (118)
      • 프로젝트 (4)
      • 알고리즘 (113)
        • SQL (108)
        • CP (5)
      • 자격증 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    pasql
    abc421
    프로그래머스
    집계함수
    카카오로그인
    atcoder
    Spring
    springboot
    OAuth2.0
    PS
    querydsl
    cp초보
    cp
    경쟁적프로그래밍
    spingboot
    어린 동물 찾기
    SQL
    ABC
    JPQL
    PCSQL
    아픈 동물 찾기
    SQL문제
    JWT
    코딩테스트
    프로그래밍대회
    contest397
    소셜로그인
    인증/인가
    atcoder beginner contest
    contest395
  • hELLO· Designed By정상우.v4.10.5
Noaahhh
[프로그래머스] 상품을 구매한 회원 비율 구하기
상단으로

티스토리툴바