Skip to content

Commit

Permalink
add window function
Browse files Browse the repository at this point in the history
  • Loading branch information
emre committed Apr 2, 2021
1 parent 3db04c7 commit 12ad96c
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 8 deletions.
20 changes: 13 additions & 7 deletions common.libsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -68,13 +68,14 @@ local predefined = import 'predefined.jsonnet';
],
},
ltv_revenue_total: {
aggregation: 'maximum',
aggregation: 'sum',
label: 'LTV',
category: 'Revenue',
sql: '{{dimension.ltv_revenue}}',
sql: '{{dimension.ltv_increase}}',
reportOptions: { formatNumbers: '$0,0' },
},
ltv_revenue_d7: {
label: 'D1 LTV',
label: 'D7 LTV',
category: 'Revenue',
sql: '{{measure.ltv_revenue_total}}/{{measure.all_users}}',
reportOptions: { formatNumbers: '$0,0' },
Expand Down Expand Up @@ -120,6 +121,11 @@ local predefined = import 'predefined.jsonnet';
sql: 'TIMESTAMP_DIFF({{dimension.event_timestamp}}, {{dimension.user_first_touch}}, DAY) > 1',
},
// Revenue
ltv_increase: {
type: 'double',
category: 'Revenue',
column: 'ltv_increase',
},
event_value_in_usd: {
type: 'double',
category: 'Revenue',
Expand Down Expand Up @@ -338,20 +344,20 @@ local predefined = import 'predefined.jsonnet';
all_events_revenue_measures: {
revenue: {
aggregation: 'sum',
category: 'Revenue',
category: 'IAP Revenue',
column: 'event_value_in_usd',
reportOptions: { formatNumbers: '$0,0' },
},
average_revenue_per_user: {
category: 'Revenue',
label: 'ARPU [All]',
label: 'IAP ARPU [All]',
sql: '1.0 * ({{measure.revenue}}/{{measure.all_users}})',
type: 'double',
reportOptions: { formatNumbers: '$0,0.00' },
},
average_revenue_per_new_user: {
aggregation: 'average',
label: 'ARPU [New users]',
label: 'IAP ARPU [New users]',
column: 'event_value_in_usd',
category: 'Revenue',
type: 'double',
Expand All @@ -362,7 +368,7 @@ local predefined = import 'predefined.jsonnet';
},
average_revenue_per_retained_user: {
aggregation: 'average',
label: 'ARPU [Retained users]',
label: 'IAP ARPU [Retained users]',
column: 'event_value_in_usd',
category: 'Revenue',
type: 'double',
Expand Down
2 changes: 1 addition & 1 deletion events.model.jsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ local common_measures = if (!installRevenue) then util.filter_object(function(k,
mappings: common.mappings,
relations: common.relations,
sql: |||
SELECT * FROM `%(project)s`.`%(dataset)s`.`events_*`
SELECT *, `user_ltv`.`revenue` - coalesce(lag(`user_ltv`.`revenue`) over (PARTITION BY user_pseudo_id ORDER BY event_timestamp), 0) as ltv_increase FROM `%(project)s`.`%(dataset)s`.`events_*`
{%% if partitioned %%} WHERE _TABLE_SUFFIX BETWEEN FORMAT_DATE("%%Y%%m%%d", DATE '{{date.start}}') and FORMAT_DATE("%%Y%%m%%d", DATE '{{date.end}}') {%% endif %%}
%(intraday_query)s
||| % {
Expand Down

0 comments on commit 12ad96c

Please sign in to comment.