Các tứ phân vị doanh thu
Dave sắp hoàn tất nghiên cứu và muốn tính thêm một vài con số. Anh ấy muốn tìm tứ phân vị thứ nhất, thứ hai và thứ ba của doanh thu. Anh ấy cũng muốn tính giá trị trung bình để xem dữ liệu bị lệch theo hướng nào.
Hãy tính tứ phân vị thứ nhất, thứ hai và thứ ba của doanh thu, cũng như giá trị trung bình.
Lưu ý: Bạn có thể tính phân vị thứ 30 cho một cột tên là column_a bằng cách dùng PERCENTILE_CONT(0.30) WITHIN GROUP (ORDER BY column_a ASC).
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ưu mỗi user ID và doanh thu Delivr tạo ra từ user đó trong CTE
user_revenues. - Tính tứ phân vị thứ nhất, thứ hai và thứ ba của doanh thu.
- Tính doanh thu trung bình.
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 user_revenues AS (
-- Select the user IDs and their revenues
SELECT
___,
___ AS revenue
FROM meals AS m
JOIN orders AS o ON m.meal_id = o.meal_id
GROUP BY user_id)
SELECT
-- Calculate the first, second, and third quartile
ROUND(
___ :: ___,
2) AS revenue_p25,
ROUND(
___ :: ___,
2) AS revenue_p50,
ROUND(
___ :: ___,
2) AS revenue_p75,
-- Calculate the average
ROUND(___ :: ___, 2) AS avg_revenue
FROM user_revenues;