Skip to content

Commit

Permalink
snapshots
Browse files Browse the repository at this point in the history
  • Loading branch information
WilliamDee committed Oct 10, 2024
1 parent a3f1693 commit de0a385
Show file tree
Hide file tree
Showing 14 changed files with 2,009 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,248 @@
-- Compute Metrics via Expressions
SELECT
subq_8.metric_time__day
, subq_8.booking__is_instant
, subq_8.bookings AS instant_bookings_with_measure_filter
FROM (
-- Constrain Output with WHERE
SELECT
subq_7.metric_time__day
, subq_7.booking__is_instant
, subq_7.bookings
FROM (
-- Join to Time Spine Dataset
SELECT
subq_5.metric_time__day AS metric_time__day
, subq_4.booking__is_instant AS booking__is_instant
, subq_4.bookings AS bookings
FROM (
-- Time Spine
SELECT
subq_6.ds AS metric_time__day
FROM ***************************.mf_time_spine subq_6
) subq_5
LEFT OUTER JOIN (
-- Aggregate Measures
SELECT
subq_3.metric_time__day
, subq_3.booking__is_instant
, SUM(subq_3.bookings) AS bookings
FROM (
-- Constrain Output with WHERE
SELECT
subq_2.metric_time__day
, subq_2.booking__is_instant
, subq_2.bookings
FROM (
-- Pass Only Elements: ['bookings', 'booking__is_instant', 'metric_time__day']
SELECT
subq_1.metric_time__day
, subq_1.booking__is_instant
, subq_1.bookings
FROM (
-- Metric Time Dimension 'ds'
SELECT
subq_0.ds__day
, subq_0.ds__week
, subq_0.ds__month
, subq_0.ds__quarter
, subq_0.ds__year
, subq_0.ds__extract_year
, subq_0.ds__extract_quarter
, subq_0.ds__extract_month
, subq_0.ds__extract_day
, subq_0.ds__extract_dow
, subq_0.ds__extract_doy
, subq_0.ds_partitioned__day
, subq_0.ds_partitioned__week
, subq_0.ds_partitioned__month
, subq_0.ds_partitioned__quarter
, subq_0.ds_partitioned__year
, subq_0.ds_partitioned__extract_year
, subq_0.ds_partitioned__extract_quarter
, subq_0.ds_partitioned__extract_month
, subq_0.ds_partitioned__extract_day
, subq_0.ds_partitioned__extract_dow
, subq_0.ds_partitioned__extract_doy
, subq_0.paid_at__day
, subq_0.paid_at__week
, subq_0.paid_at__month
, subq_0.paid_at__quarter
, subq_0.paid_at__year
, subq_0.paid_at__extract_year
, subq_0.paid_at__extract_quarter
, subq_0.paid_at__extract_month
, subq_0.paid_at__extract_day
, subq_0.paid_at__extract_dow
, subq_0.paid_at__extract_doy
, subq_0.booking__ds__day
, subq_0.booking__ds__week
, subq_0.booking__ds__month
, subq_0.booking__ds__quarter
, subq_0.booking__ds__year
, subq_0.booking__ds__extract_year
, subq_0.booking__ds__extract_quarter
, subq_0.booking__ds__extract_month
, subq_0.booking__ds__extract_day
, subq_0.booking__ds__extract_dow
, subq_0.booking__ds__extract_doy
, subq_0.booking__ds_partitioned__day
, subq_0.booking__ds_partitioned__week
, subq_0.booking__ds_partitioned__month
, subq_0.booking__ds_partitioned__quarter
, subq_0.booking__ds_partitioned__year
, subq_0.booking__ds_partitioned__extract_year
, subq_0.booking__ds_partitioned__extract_quarter
, subq_0.booking__ds_partitioned__extract_month
, subq_0.booking__ds_partitioned__extract_day
, subq_0.booking__ds_partitioned__extract_dow
, subq_0.booking__ds_partitioned__extract_doy
, subq_0.booking__paid_at__day
, subq_0.booking__paid_at__week
, subq_0.booking__paid_at__month
, subq_0.booking__paid_at__quarter
, subq_0.booking__paid_at__year
, subq_0.booking__paid_at__extract_year
, subq_0.booking__paid_at__extract_quarter
, subq_0.booking__paid_at__extract_month
, subq_0.booking__paid_at__extract_day
, subq_0.booking__paid_at__extract_dow
, subq_0.booking__paid_at__extract_doy
, subq_0.ds__day AS metric_time__day
, subq_0.ds__week AS metric_time__week
, subq_0.ds__month AS metric_time__month
, subq_0.ds__quarter AS metric_time__quarter
, subq_0.ds__year AS metric_time__year
, subq_0.ds__extract_year AS metric_time__extract_year
, subq_0.ds__extract_quarter AS metric_time__extract_quarter
, subq_0.ds__extract_month AS metric_time__extract_month
, subq_0.ds__extract_day AS metric_time__extract_day
, subq_0.ds__extract_dow AS metric_time__extract_dow
, subq_0.ds__extract_doy AS metric_time__extract_doy
, subq_0.listing
, subq_0.guest
, subq_0.host
, subq_0.booking__listing
, subq_0.booking__guest
, subq_0.booking__host
, subq_0.is_instant
, subq_0.booking__is_instant
, subq_0.bookings
, subq_0.instant_bookings
, subq_0.booking_value
, subq_0.max_booking_value
, subq_0.min_booking_value
, subq_0.bookers
, subq_0.average_booking_value
, subq_0.referred_bookings
, subq_0.median_booking_value
, subq_0.booking_value_p99
, subq_0.discrete_booking_value_p99
, subq_0.approximate_continuous_booking_value_p99
, subq_0.approximate_discrete_booking_value_p99
FROM (
-- Read Elements From Semantic Model 'bookings_source'
SELECT
1 AS bookings
, CASE WHEN is_instant THEN 1 ELSE 0 END AS instant_bookings
, bookings_source_src_28000.booking_value
, bookings_source_src_28000.booking_value AS max_booking_value
, bookings_source_src_28000.booking_value AS min_booking_value
, bookings_source_src_28000.guest_id AS bookers
, bookings_source_src_28000.booking_value AS average_booking_value
, bookings_source_src_28000.booking_value AS booking_payments
, CASE WHEN referrer_id IS NOT NULL THEN 1 ELSE 0 END AS referred_bookings
, bookings_source_src_28000.booking_value AS median_booking_value
, bookings_source_src_28000.booking_value AS booking_value_p99
, bookings_source_src_28000.booking_value AS discrete_booking_value_p99
, bookings_source_src_28000.booking_value AS approximate_continuous_booking_value_p99
, bookings_source_src_28000.booking_value AS approximate_discrete_booking_value_p99
, bookings_source_src_28000.is_instant
, DATETIME_TRUNC(bookings_source_src_28000.ds, day) AS ds__day
, DATETIME_TRUNC(bookings_source_src_28000.ds, isoweek) AS ds__week
, DATETIME_TRUNC(bookings_source_src_28000.ds, month) AS ds__month
, DATETIME_TRUNC(bookings_source_src_28000.ds, quarter) AS ds__quarter
, DATETIME_TRUNC(bookings_source_src_28000.ds, year) AS ds__year
, EXTRACT(year FROM bookings_source_src_28000.ds) AS ds__extract_year
, EXTRACT(quarter FROM bookings_source_src_28000.ds) AS ds__extract_quarter
, EXTRACT(month FROM bookings_source_src_28000.ds) AS ds__extract_month
, EXTRACT(day FROM bookings_source_src_28000.ds) AS ds__extract_day
, IF(EXTRACT(dayofweek FROM bookings_source_src_28000.ds) = 1, 7, EXTRACT(dayofweek FROM bookings_source_src_28000.ds) - 1) AS ds__extract_dow
, EXTRACT(dayofyear FROM bookings_source_src_28000.ds) AS ds__extract_doy
, DATETIME_TRUNC(bookings_source_src_28000.ds_partitioned, day) AS ds_partitioned__day
, DATETIME_TRUNC(bookings_source_src_28000.ds_partitioned, isoweek) AS ds_partitioned__week
, DATETIME_TRUNC(bookings_source_src_28000.ds_partitioned, month) AS ds_partitioned__month
, DATETIME_TRUNC(bookings_source_src_28000.ds_partitioned, quarter) AS ds_partitioned__quarter
, DATETIME_TRUNC(bookings_source_src_28000.ds_partitioned, year) AS ds_partitioned__year
, EXTRACT(year FROM bookings_source_src_28000.ds_partitioned) AS ds_partitioned__extract_year
, EXTRACT(quarter FROM bookings_source_src_28000.ds_partitioned) AS ds_partitioned__extract_quarter
, EXTRACT(month FROM bookings_source_src_28000.ds_partitioned) AS ds_partitioned__extract_month
, EXTRACT(day FROM bookings_source_src_28000.ds_partitioned) AS ds_partitioned__extract_day
, IF(EXTRACT(dayofweek FROM bookings_source_src_28000.ds_partitioned) = 1, 7, EXTRACT(dayofweek FROM bookings_source_src_28000.ds_partitioned) - 1) AS ds_partitioned__extract_dow
, EXTRACT(dayofyear FROM bookings_source_src_28000.ds_partitioned) AS ds_partitioned__extract_doy
, DATETIME_TRUNC(bookings_source_src_28000.paid_at, day) AS paid_at__day
, DATETIME_TRUNC(bookings_source_src_28000.paid_at, isoweek) AS paid_at__week
, DATETIME_TRUNC(bookings_source_src_28000.paid_at, month) AS paid_at__month
, DATETIME_TRUNC(bookings_source_src_28000.paid_at, quarter) AS paid_at__quarter
, DATETIME_TRUNC(bookings_source_src_28000.paid_at, year) AS paid_at__year
, EXTRACT(year FROM bookings_source_src_28000.paid_at) AS paid_at__extract_year
, EXTRACT(quarter FROM bookings_source_src_28000.paid_at) AS paid_at__extract_quarter
, EXTRACT(month FROM bookings_source_src_28000.paid_at) AS paid_at__extract_month
, EXTRACT(day FROM bookings_source_src_28000.paid_at) AS paid_at__extract_day
, IF(EXTRACT(dayofweek FROM bookings_source_src_28000.paid_at) = 1, 7, EXTRACT(dayofweek FROM bookings_source_src_28000.paid_at) - 1) AS paid_at__extract_dow
, EXTRACT(dayofyear FROM bookings_source_src_28000.paid_at) AS paid_at__extract_doy
, bookings_source_src_28000.is_instant AS booking__is_instant
, DATETIME_TRUNC(bookings_source_src_28000.ds, day) AS booking__ds__day
, DATETIME_TRUNC(bookings_source_src_28000.ds, isoweek) AS booking__ds__week
, DATETIME_TRUNC(bookings_source_src_28000.ds, month) AS booking__ds__month
, DATETIME_TRUNC(bookings_source_src_28000.ds, quarter) AS booking__ds__quarter
, DATETIME_TRUNC(bookings_source_src_28000.ds, year) AS booking__ds__year
, EXTRACT(year FROM bookings_source_src_28000.ds) AS booking__ds__extract_year
, EXTRACT(quarter FROM bookings_source_src_28000.ds) AS booking__ds__extract_quarter
, EXTRACT(month FROM bookings_source_src_28000.ds) AS booking__ds__extract_month
, EXTRACT(day FROM bookings_source_src_28000.ds) AS booking__ds__extract_day
, IF(EXTRACT(dayofweek FROM bookings_source_src_28000.ds) = 1, 7, EXTRACT(dayofweek FROM bookings_source_src_28000.ds) - 1) AS booking__ds__extract_dow
, EXTRACT(dayofyear FROM bookings_source_src_28000.ds) AS booking__ds__extract_doy
, DATETIME_TRUNC(bookings_source_src_28000.ds_partitioned, day) AS booking__ds_partitioned__day
, DATETIME_TRUNC(bookings_source_src_28000.ds_partitioned, isoweek) AS booking__ds_partitioned__week
, DATETIME_TRUNC(bookings_source_src_28000.ds_partitioned, month) AS booking__ds_partitioned__month
, DATETIME_TRUNC(bookings_source_src_28000.ds_partitioned, quarter) AS booking__ds_partitioned__quarter
, DATETIME_TRUNC(bookings_source_src_28000.ds_partitioned, year) AS booking__ds_partitioned__year
, EXTRACT(year FROM bookings_source_src_28000.ds_partitioned) AS booking__ds_partitioned__extract_year
, EXTRACT(quarter FROM bookings_source_src_28000.ds_partitioned) AS booking__ds_partitioned__extract_quarter
, EXTRACT(month FROM bookings_source_src_28000.ds_partitioned) AS booking__ds_partitioned__extract_month
, EXTRACT(day FROM bookings_source_src_28000.ds_partitioned) AS booking__ds_partitioned__extract_day
, IF(EXTRACT(dayofweek FROM bookings_source_src_28000.ds_partitioned) = 1, 7, EXTRACT(dayofweek FROM bookings_source_src_28000.ds_partitioned) - 1) AS booking__ds_partitioned__extract_dow
, EXTRACT(dayofyear FROM bookings_source_src_28000.ds_partitioned) AS booking__ds_partitioned__extract_doy
, DATETIME_TRUNC(bookings_source_src_28000.paid_at, day) AS booking__paid_at__day
, DATETIME_TRUNC(bookings_source_src_28000.paid_at, isoweek) AS booking__paid_at__week
, DATETIME_TRUNC(bookings_source_src_28000.paid_at, month) AS booking__paid_at__month
, DATETIME_TRUNC(bookings_source_src_28000.paid_at, quarter) AS booking__paid_at__quarter
, DATETIME_TRUNC(bookings_source_src_28000.paid_at, year) AS booking__paid_at__year
, EXTRACT(year FROM bookings_source_src_28000.paid_at) AS booking__paid_at__extract_year
, EXTRACT(quarter FROM bookings_source_src_28000.paid_at) AS booking__paid_at__extract_quarter
, EXTRACT(month FROM bookings_source_src_28000.paid_at) AS booking__paid_at__extract_month
, EXTRACT(day FROM bookings_source_src_28000.paid_at) AS booking__paid_at__extract_day
, IF(EXTRACT(dayofweek FROM bookings_source_src_28000.paid_at) = 1, 7, EXTRACT(dayofweek FROM bookings_source_src_28000.paid_at) - 1) AS booking__paid_at__extract_dow
, EXTRACT(dayofyear FROM bookings_source_src_28000.paid_at) AS booking__paid_at__extract_doy
, bookings_source_src_28000.listing_id AS listing
, bookings_source_src_28000.guest_id AS guest
, bookings_source_src_28000.host_id AS host
, bookings_source_src_28000.listing_id AS booking__listing
, bookings_source_src_28000.guest_id AS booking__guest
, bookings_source_src_28000.host_id AS booking__host
FROM ***************************.fct_bookings bookings_source_src_28000
) subq_0
) subq_1
) subq_2
WHERE (metric_time__day > '2020-01-01') AND (booking__is_instant)
) subq_3
GROUP BY
metric_time__day
, booking__is_instant
) subq_4
ON
subq_5.metric_time__day = subq_4.metric_time__day
) subq_7
WHERE metric_time__day > '2020-01-01'
) subq_8
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
-- Constrain Output with WHERE
-- Compute Metrics via Expressions
SELECT
metric_time__day
, booking__is_instant
, bookings AS instant_bookings_with_measure_filter
FROM (
-- Join to Time Spine Dataset
SELECT
subq_15.ds AS metric_time__day
, subq_13.booking__is_instant AS booking__is_instant
, subq_13.bookings AS bookings
FROM ***************************.mf_time_spine subq_15
LEFT OUTER JOIN (
-- Constrain Output with WHERE
-- Aggregate Measures
SELECT
metric_time__day
, booking__is_instant
, SUM(bookings) AS bookings
FROM (
-- Read Elements From Semantic Model 'bookings_source'
-- Metric Time Dimension 'ds'
-- Pass Only Elements: ['bookings', 'booking__is_instant', 'metric_time__day']
SELECT
DATETIME_TRUNC(ds, day) AS metric_time__day
, is_instant AS booking__is_instant
, 1 AS bookings
FROM ***************************.fct_bookings bookings_source_src_28000
) subq_11
WHERE (metric_time__day > '2020-01-01') AND (booking__is_instant)
GROUP BY
metric_time__day
, booking__is_instant
) subq_13
ON
subq_15.ds = subq_13.metric_time__day
) subq_16
WHERE metric_time__day > '2020-01-01'
Loading

0 comments on commit de0a385

Please sign in to comment.