diff --git a/models/intermediate/kpis/int_kpis__dimension_deals.sql b/models/intermediate/kpis/int_kpis__dimension_deals.sql index f5586ef..71bc143 100644 --- a/models/intermediate/kpis/int_kpis__dimension_deals.sql +++ b/models/intermediate/kpis/int_kpis__dimension_deals.sql @@ -1,7 +1,24 @@ {{ config(materialized="table", unique_key="id_deal") }} with hubspot_deals as ( - select id_deal, deal_name as main_deal_name, live_date_utc as deal_start_date + select + id_deal, + deal_name as main_deal_name, + live_date_utc as deal_start_date, + date_trunc('month', live_date_utc) as deal_start_month, + cancellation_date_utc as deal_cancellation_date, + date_trunc('month', cancellation_date_utc) as deal_cancellation_month, + case + when amount_of_properties between 1 and 5 + then '01-05' + when amount_of_properties between 6 and 20 + then '06-20' + when amount_of_properties between 21 and 60 + then '21-60' + when amount_of_properties >= 61 + then '61+' + else 'UNSET' + end as hubspot_listing_segmentation from {{ ref("int_hubspot__deal") }} where live_date_utc is not null ), @@ -10,6 +27,7 @@ with id_deal, main_deal_name, first_created_date_utc as deal_start_date, + date_trunc('month', first_created_date_utc) as deal_start_month, main_billing_country_iso_3_per_deal from {{ ref("int_core__deal") }} ), @@ -39,7 +57,13 @@ with cd.main_billing_country_iso_3_per_deal, min( coalesce(hd.deal_start_date, cd.deal_start_date) - ) as effective_deal_start_date_utc + ) as effective_deal_start_date_utc, + min( + coalesce(hd.deal_start_month, cd.deal_start_month) + ) as effective_deal_start_month, + min(hd.deal_cancellation_date) as effective_deal_cancellation_date_utc, + min(hd.deal_cancellation_month) as effective_deal_cancellation_month, + min(hd.hubspot_listing_segmentation) as hubspot_listing_segmentation from hubspot_deals hd full outer join core_deals cd on hd.id_deal = cd.id_deal group by 1, 2, 3 @@ -52,6 +76,10 @@ select end as has_active_pms, ipd.distinct_active_pms as active_pms_list, cd.main_billing_country_iso_3_per_deal, - cd.effective_deal_start_date_utc + cd.effective_deal_start_date_utc, + cd.effective_deal_start_month, + cd.effective_deal_cancellation_date_utc, + cd.effective_deal_cancellation_month, + cd.hubspot_listing_segmentation from combined_deals cd left join integrations_per_deal ipd on cd.id_deal = ipd.id_deal