Не менял ничего
This commit is contained in:
@@ -113,14 +113,6 @@ SELECT DISTINCT
|
||||
enrolled_at::DATE
|
||||
FROM raw.enrollments;
|
||||
|
||||
UPDATE core.enrollments e
|
||||
SET enrolled_at = lv.viewed_at
|
||||
FROM raw.lesson_views lv
|
||||
WHERE lv.user_id = e.user_id;
|
||||
|
||||
ALTER TABLE core.enrollments
|
||||
ALTER COLUMN enrolled_at TYPE TIMESTAMP;
|
||||
|
||||
CREATE MATERIALIZED VIEW dm.dm_lesson_popularity_summary AS
|
||||
SELECT
|
||||
dl.lesson_id,
|
||||
@@ -138,8 +130,24 @@ JOIN core.dim_user du ON du.user_id = flv.user_id
|
||||
GROUP BY dl.lesson_id, dl.title, dc.course_id, dc.title
|
||||
ORDER BY dl.lesson_id;
|
||||
|
||||
select * from dm.dm_lesson_popularity_summary
|
||||
order by lesson_id;
|
||||
|
||||
/*
|
||||
|
||||
Цель:
|
||||
Показать популярность каждого урока.
|
||||
|
||||
Поля витрины:
|
||||
- lesson_id — идентификатор урока
|
||||
- lesson_title — название урока
|
||||
- course_id — идентификатор курса
|
||||
- course_title — название курса
|
||||
- total_views — общее число просмотров урока
|
||||
- unique_users — количество уникальных пользователей
|
||||
- first_view — дата первого просмотра
|
||||
- last_view — дата последнего просмотра
|
||||
|
||||
*/
|
||||
|
||||
|
||||
CREATE MATERIALIZED VIEW dm.dm_inactive_users_summary AS
|
||||
SELECT
|
||||
@@ -155,6 +163,20 @@ LEFT JOIN core.fact_lesson_views flv ON flv.user_id = du.user_id
|
||||
WHERE flv.user_id IS NULL
|
||||
GROUP BY du.user_id, du.name, du.email, du.age, du.registration_date;
|
||||
|
||||
/*
|
||||
|
||||
Цель:
|
||||
Определить невовлечённых пользователей и потенциальный отток.
|
||||
|
||||
Поля витрины:
|
||||
- user_id — идентификатор пользователя
|
||||
- user_name — имя
|
||||
- email — почта
|
||||
- age — возраст
|
||||
- enrollments_count — количество курсов
|
||||
- registration_date — дата регистрации
|
||||
|
||||
*/
|
||||
|
||||
CREATE MATERIALIZED VIEW dm.course_completion_rate AS
|
||||
SELECT
|
||||
@@ -178,3 +200,18 @@ LEFT JOIN core.fact_lesson_views flv ON dl.lesson_id = flv.lesson_id
|
||||
GROUP BY du.user_id, du.name, c.course_id, c.title
|
||||
ORDER BY du.user_id, c.course_id;
|
||||
|
||||
/*
|
||||
|
||||
Цель:
|
||||
Анализировать, насколько пользователи проходят курсы до конца.
|
||||
|
||||
Поля витрины:
|
||||
- user_id — идентификатор пользователя
|
||||
- user_name — имя пользователя
|
||||
- course_id — идентификатор курса
|
||||
- course_title — название курса
|
||||
- total_lessons — количество уроков в курсе
|
||||
- lessons_viewed — число просмотренных уроков
|
||||
- completion_rate — lessons_viewed / total_lessons
|
||||
|
||||
*/
|
||||
Reference in New Issue
Block a user