[sql] 인라인 뷰를 사용하여 월별로 가장 많이 팔린 제품을 조회할 수 있나요?

아래는 인라인 뷰를 사용하여 월별로 가장 많이 팔린 제품을 조회하는 쿼리의 예시입니다.

WITH monthly_sales AS (
    SELECT DATE_TRUNC('month', order_date) AS month,
           product_id,
           SUM(quantity) AS total_quantity
    FROM sales
    GROUP BY DATE_TRUNC('month', order_date), product_id
)
SELECT *
FROM (
    SELECT month,
           product_id,
           total_quantity,
           RANK() OVER (PARTITION BY month ORDER BY total_quantity DESC) AS ranking
    FROM monthly_sales
) ranked_sales
WHERE ranking = 1;

이 쿼리에서는 WITH 구문을 사용하여 월별 판매량을 계산한 후, RANK() 함수를 사용하여 각 월별로 판매량이 가장 높은 제품을 순위를 매기고, 순위가 1인 제품만을 선택합니다.

참고문헌: PostgreSQL Documentation - Common Table Expressions