연속된 이틀간의 누적 주문 계산하기 : solvesql

오유찬·2025년 12월 22일

SQL

목록 보기
24/71
-- 하루 배송 지연 > 다음 날로 이월 : 물류 센터가 감당해야 할 최대 물량
-- 2023년 11월, 12월 : WHERE
-- 온라인 주문 건에 한정

WITH t1 AS (SELECT  transaction_id, 
                    DATE_FORMAT(purchased_at, '%Y-%m-%d') as order_date
            FROM    transactions
            WHERE   DATE_FORMAT(purchased_at, '%Y-%m') IN ('2023-11', '2023-12')
            AND     is_online_order = True
            ORDER BY purchased_at),
    t2 AS (SELECT 
            order_date,
            COUNT(DISTINCT transaction_id) as num_orders
          FROM
            t1
          GROUP BY order_date
          )
SELECT  t2.order_date, 
        DATE_FORMAT(t2.order_date, '%W') as weekday,
        t2.num_orders as num_orders_today,
        t2.num_orders + IF(t2.order_date = '2023-11-01', 0, t3.num_orders) as num_orders_from_yesterday
FROM    t2 LEFT JOIN t2 t3 ON 
        t2.order_date = DATE_ADD(t3.order_date, INTERVAL 1 DAY)
profile
열심히 하면 재밌다

0개의 댓글