21 lines
584 B
SQL
21 lines
584 B
SQL
CREATE MATERIALIZED VIEW lesson_popularity_summary
|
|
ENGINE = SummingMergeTree()
|
|
ORDER BY (course_id, lesson_id) AS
|
|
SELECT
|
|
lv.lesson_id as lesson_id,
|
|
l.title as lesson_title,
|
|
lv.course_id as course_id,
|
|
c.title as course_title,
|
|
count() as total_views,
|
|
uniq(lv.user_id) as unique_users,
|
|
min(lv.viewed_at) as first_view,
|
|
max(lv.viewed_at) as last_view
|
|
FROM fact_lesson_views lv
|
|
LEFT JOIN dim_lesson l ON lv.lesson_id = l.lesson_id
|
|
LEFT JOIN dim_course c ON lv.course_id = c.course_id
|
|
GROUP BY
|
|
lv.lesson_id,
|
|
l.title,
|
|
lv.course_id,
|
|
c.title;
|