홍동이의 성장일기
[LeetCode] 1084. Sales Analysis III 본문
SELECT s.product_id
, p.product_name
FROM sales s LEFT JOIN product p
ON s.product_id = p.product_id
GROUP BY s.product_id
HAVING MIN(s.sale_date) BETWEEN '2019-01-01' AND '2019-03-31'
AND MAX(s.sale_date) BETWEEN '2019-01-01' AND '2019-03-31'
💡 개념정리
1. sales 테이블에 상품명을 함께 표시해주기 위해 LEFT JOIN을 해주고 필요한 column을 추출해준다.
2. GROUP BY를 해주고 각 상품의 최대, 최소 sales_date가 2019년 1분기에 있도록 HAVING 조건을 걸어준다.
solutions를 살펴보니 HAVING 조건을 이렇게도 줄 수 있었다.
HAVING MIN(s.sale_date) >= '2019-01-01'
AND MAX(s.sale_date) <= '2019-03-31'
📍본 내용은 데이터리안 'SQL 데이터 분석 캠프 실전반' 을 수강하며 작성한 내용입니다.
728x90
'Tool > SQL 코딩테스트 풀이' 카테고리의 다른 글
[LeetCode] 180. Consecutive Numbers (0) | 2023.08.22 |
---|---|
[MySQL] RegexOne 정규표현식 Lesson 1 ~5 예제 풀이 및 설명 (0) | 2023.08.21 |
[LeetCode] 1045. Customers Who Bought All Products (0) | 2023.08.16 |
[LeetCode] 570. Managers with at Least 5 Direct Reports (0) | 2023.08.15 |
[LeetCode] 550. Game Play Analysis IV (0) | 2023.08.14 |
Comments