Leetcode PostgreSQL Market Analysis I
업데이트:
문제
코드
-- Write your PostgreSQL query statement below
SELECT Users.user_id AS buyer_id
, Users.join_date
, COUNT(Orders.order_id) AS orders_in_2019
FROM Users
LEFT OUTER JOIN Orders ON Users.user_id = Orders.buyer_id AND DATE_PART('year', Orders.order_date) = '2019'
GROUP BY Users.user_id
, Users.join_date
결과
설명
-
사용자 별 가입 일자와 2019년도 주문 횟수를 조회하는 문제이다.
-
Orders 테이블의 이력이 없을 수 있으므로 LEFT OUTER JOIN을 사용하되, Users 테이블의 user_id와 Orders 테이블의 구매자 정보인 buyer_id가 동일하면서 2019년도 주문인 경우만 대상으로 한다.
-
Users 테이블의 사용자 기반으로, user_id를 buyer_id로 join_date 기준으로 Orders 테이블의 데이터 갯수를 계산해준다.
댓글남기기