From bc21102c208b1bb1fda60304e2168b3ff0dbd802 Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Tue, 27 Aug 2024 16:14:31 -0400 Subject: [PATCH] Add databox analytics queries --- .../databox_dashboards/account_recency.sql | 34 ++++++++++++++++++ .../account_recency_daus.sql | 35 +++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 _sql/actions_and_analytics/databox_dashboards/account_recency.sql create mode 100644 _sql/actions_and_analytics/databox_dashboards/account_recency_daus.sql diff --git a/_sql/actions_and_analytics/databox_dashboards/account_recency.sql b/_sql/actions_and_analytics/databox_dashboards/account_recency.sql new file mode 100644 index 0000000000..af0b888517 --- /dev/null +++ b/_sql/actions_and_analytics/databox_dashboards/account_recency.sql @@ -0,0 +1,34 @@ +-- noinspection SqlDialectInspectionForFile +-- noinspection SqlNoDataSourceInspectionForFile +-- noinspection SqlResolveForFile + +-- Generations by account recency histogram +select + created_date, + case when user_account_age_days <= 1 then 'today' + when user_account_age_days <= 30 then '<1 month' + when user_account_age_days <= 60 then '<2 month' + when user_account_age_days <= 90 then '<3 month' + when user_account_age_days <= 365 then '<1 year' + else '1+ years' end as user_account_age, + count(*) as generations +FROM ( + SELECT + DATE(gij.created_at) as created_date, + -- Account age at time of media generation + DATEDIFF(gij.created_at, u.created_at) as user_account_age_days + from + generic_inference_jobs as gij + join + users as u + on + gij.maybe_creator_user_token = u.token + where + gij.created_at >= (CURDATE() - INTERVAL 30 DAY) + and gij.status = 'complete_success' + and gij.id > 40839206 + order by gij.created_at asc +) as x +group by created_date, user_account_age +order by created_date asc, user_account_age asc; + diff --git a/_sql/actions_and_analytics/databox_dashboards/account_recency_daus.sql b/_sql/actions_and_analytics/databox_dashboards/account_recency_daus.sql new file mode 100644 index 0000000000..a46bfd6de4 --- /dev/null +++ b/_sql/actions_and_analytics/databox_dashboards/account_recency_daus.sql @@ -0,0 +1,35 @@ +-- noinspection SqlDialectInspectionForFile +-- noinspection SqlNoDataSourceInspectionForFile +-- noinspection SqlResolveForFile + +-- Generations by account recency histogram +select + created_date, + case when user_account_age_days <= 1 then 'today' + when user_account_age_days <= 30 then '<1 month' + when user_account_age_days <= 60 then '<2 month' + when user_account_age_days <= 90 then '<3 month' + when user_account_age_days <= 365 then '<1 year' + else '1+ years' end as user_account_age, + count(distinct user_token) as dau_count +FROM ( + SELECT + DATE(gij.created_at) as created_date, + -- Account age at time of media generation + DATEDIFF(gij.created_at, u.created_at) as user_account_age_days, + u.token as user_token + from + generic_inference_jobs as gij + join + users as u + on + gij.maybe_creator_user_token = u.token + where + gij.created_at >= (CURDATE() - INTERVAL 30 DAY) + and gij.status = 'complete_success' + and gij.id > 40839206 + order by gij.created_at asc +) as x +group by created_date, user_account_age +order by created_date asc, user_account_age asc; +