Theo dõi MAU (II)
Giờ bạn đã xây dựng nền tảng cho công cụ theo dõi MAU của Carol, hãy viết một truy vấn trả về bảng gồm các tháng và độ chênh lệch giữa MAU hiện tại và MAU của tháng trước cho từng tháng.
Nếu delta âm, tức là số người dùng hoạt động trong tháng hiện tại ít hơn tháng trước, lúc này công cụ theo dõi sẽ bật cảnh báo đỏ để đội Product kịp thời điều tra.
Bài tập này là một phần của khóa học
Phân tích dữ liệu kinh doanh bằng SQL
Hướng dẫn bài tập
- Lấy MAU của tháng trước trong CTE
mau_with_lag. - Chọn tháng và độ chênh lệch giữa MAU của tháng đó và MAU của tháng trước.
- Sắp xếp theo tháng tăng dần.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
WITH mau AS (
SELECT
DATE_TRUNC('month', order_date) :: DATE AS delivr_month,
COUNT(DISTINCT user_id) AS mau
FROM orders
GROUP BY delivr_month),
mau_with_lag AS (
SELECT
delivr_month,
mau,
-- Fetch the previous month's MAU
COALESCE(
___,
0) AS last_mau
FROM mau)
SELECT
-- Calculate each month's delta of MAUs
___,
___ AS mau_delta
FROM mau_with_lag
-- Order by month in ascending order
ORDER BY ___;