data-dwh-dbt-project/models/intermediate/kpis/int_kpis__agg_monthly_created_bookings.sql
Oriol Roqué Paniagua cc86565b02 Merged PR 4304: Adds Cancelled and Not Cancelled Created Bookings
# Description

First commit - should be an exact replica of the previous PR on Check-Out:

Adds Cancelled and Not Cancelled Created Bookings as absolute figures. Adds Cancellation Rate only for aggregated models.
I also added the removal of duplicate bookings. Otherwise the rates might be affected, and this should be cleaner anyway.

Second commit:
Small changes on the unique key description of the model for check-out, doesn't impact the model output.

# Checklist

- [X] The edited models and dependants run properly with production data.
- [X] The edited models are sufficiently documented.
- [X] The edited models contain PK tests, and I've ran and passed them.
- [X] I have checked for DRY opportunities with other models and docs.
- [X] I've picked the right materialization for the affected models.

# Other

- [ ] Check if a full-refresh is required after this PR is merged.

Related work items: #24637
2025-02-06 13:13:02 +00:00

28 lines
893 B
SQL

{% set dimensions = get_kpi_dimensions_per_model("CREATED_BOOKINGS") %}
{{
config(
materialized="table", unique_key=["end_date", "dimension", "dimension_value"]
)
}}
{% for dimension in dimensions %}
select
-- Unique Key --
start_date,
end_date,
{{ dimension.dimension }} as dimension,
{{ dimension.dimension_value }} as dimension_value,
-- Metrics --
sum(created_bookings) as created_bookings,
sum(cancelled_created_bookings) as cancelled_created_bookings,
sum(not_cancelled_created_bookings) as not_cancelled_created_bookings,
sum(cancelled_created_bookings)
/ sum(created_bookings) as cancelled_created_bookings_rate
from {{ ref("int_kpis__metric_monthly_created_bookings") }}
group by 1, 2, 3, 4
{% if not loop.last %}
union all
{% endif %}
{% endfor %}