1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Lập báo cáo trong SQL

Connected

Bài tập

So sánh theo tuần

Trong bài trước, bạn đã tận dụng cửa sổ theo tháng để tính thay đổi theo tháng. Nhưng đôi khi, bạn sẽ muốn tính cho khoảng thời gian khác, như so sánh 7 ngày gần nhất với 7 ngày trước đó. Để tính giá trị của 7 ngày gần nhất, bạn sẽ cần thiết lập một rolling calculation.

Trong bài này, bạn sẽ lấy trung bình trượt 7 ngày của views cho mỗi date và so sánh với trung bình 7 ngày trước đó của views. Cách này cho bạn một phép so sánh tuần-trên-tuần rõ ràng cho từng ngày.

Cú pháp cho rolling average là AVG(value) OVER (PARTITION BY field ORDER BY field ROWS BETWEEN N PRECEDING AND CURRENT ROW), trong đó N là số hàng lùi lại khi thực hiện phép tính. Hãy nhớ rằng CURRENT ROW cũng được tính là một hàng.

Hướng dẫn 1/3

undefined XP
    1
    2
    3
  • Hiển thị daily_views và weekly_avg theo date, trong đó weekly_avg là trung bình trượt 7 ngày của views.