create materialized view dm_platform_summary as select (select count(id) from users) as total_users, (select count(id) from courses) as total_courses, (select count(id) from lessons) as total_lessons, (select count(distinct user_id) from lessons_views) as users_with_views, round((select count(id) from lessons)*1.0/nullif((select count(id) from courses), 0), 2) as avg_lessons_per_course, round((select count(id) from lessons_views)*1.0/nullif((select count(id) from lessons), 0), 2) as avg_views_per_lesson