Добавил проверку на null в две датамарта
This commit is contained in:
@@ -3,7 +3,7 @@ create materialized view platform_summary as
|
|||||||
lv_stats as (
|
lv_stats as (
|
||||||
select
|
select
|
||||||
count(distinct user_id) as users_with_views,
|
count(distinct user_id) as users_with_views,
|
||||||
count(*)::decimal / count(distinct lesson_id) as avg_views_per_lesson
|
count(*)::decimal / nullif(count(distinct lesson_id), as avg_views_per_lesson
|
||||||
from lesson_views
|
from lesson_views
|
||||||
)
|
)
|
||||||
select
|
select
|
||||||
@@ -11,7 +11,7 @@ create materialized view platform_summary as
|
|||||||
total_courses,
|
total_courses,
|
||||||
total_lessons,
|
total_lessons,
|
||||||
users_with_views,
|
users_with_views,
|
||||||
round((total_lessons::decimal / total_courses), 2) AS avg_lessons_per_course,
|
round((total_lessons::decimal / nullif(total_courses, 2)), 2) AS avg_lessons_per_course,
|
||||||
round(avg_views_per_lesson, 2) as avg_views_per_lesson
|
round(avg_views_per_lesson, 2) as avg_views_per_lesson
|
||||||
from
|
from
|
||||||
(
|
(
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ CREATE MATERIALIZED VIEW user_activity_summary as
|
|||||||
l.viewed_lessons_count,
|
l.viewed_lessons_count,
|
||||||
l.last_view,
|
l.last_view,
|
||||||
l.first_view,
|
l.first_view,
|
||||||
round(l.viewed_lessons_count::decimal * 100 / en.possible_lessons, 2) as engagement_rate
|
round(l.viewed_lessons_count::decimal * 100 / nullif(en.possible_lessons, 0), 2) as engagement_rate
|
||||||
from users as u
|
from users as u
|
||||||
join lessons_cte as l on u.id = l.user_id
|
join lessons_cte as l on u.id = l.user_id
|
||||||
join engagement_cte as en on u.id = en.user_id
|
join engagement_cte as en on u.id = en.user_id
|
||||||
|
|||||||
Reference in New Issue
Block a user