Add filter for only actual records in csc
This commit is contained in:
parent
26830313de
commit
71cf8ad273
@ -17,36 +17,47 @@ select *,
|
||||
OVER (PARTITION BY UPDATE_USER, CONFIRMATION_NO, CHANGE_DATE, UPDATE_TYPE)
|
||||
row_number
|
||||
from ${ref("pphe_five9_raw","csc_rev_changes_*")}
|
||||
${ when(incremental(), `where _TABLE_SUFFIX = FORMAT_DATE('%Y%m%d',current_date("Europe/Amsterdam"))`) }) --last date table is taken
|
||||
select cr.RESORT,
|
||||
cr.MARKET_CODE,
|
||||
cr.MARKET_DESC,
|
||||
cr.CONFIRMATION_NO,
|
||||
cr.RESV_STATUS,
|
||||
ms.RESV_STATUS_ID,
|
||||
cr.ARRIVAL,
|
||||
cr.DEPARTURE,
|
||||
cr.UPDATE_USER,
|
||||
ca.AGENT_ID,
|
||||
case
|
||||
when date(safe_cast(cr.CHANGE_DATE as timestamp)) >= ca.CSC_START_DATE and
|
||||
date(safe_cast(cr.CHANGE_DATE as timestamp)) <= ca.CSC_END_DATE
|
||||
then 'Y'
|
||||
else 'N'
|
||||
end as CSC_AGENT_YN,
|
||||
cr.CHANGE_DATE,
|
||||
date(safe_cast(cr.CHANGE_DATE as timestamp)) DATE,
|
||||
extract(hour from safe_cast(cr.CHANGE_DATE as timestamp)) HOUR,
|
||||
cr.UPDATE_TYPE,
|
||||
mu.UPDATE_TYPE_ID,
|
||||
1 as COUNTER
|
||||
from csc_rev_deduplicated cr
|
||||
left join ${ref("pphe_five9_stg","stg_MAPPING_CSC_AGENT")} ca
|
||||
on cr.UPDATE_USER=ca.OPERA_UPDATE_USER
|
||||
left join ${ref("pphe_five9_stg","stg_MAPPING_RESV_STATUS")} ms
|
||||
on cr.RESV_STATUS=ms.RESV_STATUS
|
||||
left join ${ref("pphe_five9_stg","stg_MAPPING_UPDATE_TYPE")} mu
|
||||
on cr.UPDATE_TYPE=mu.UPDATE_TYPE
|
||||
where row_number = 1
|
||||
and cr.UPDATE_USER is not null
|
||||
and ca.AGENT_ID is not null
|
||||
${ when(incremental(), `where _TABLE_SUFFIX = FORMAT_DATE('%Y%m%d',current_date("Europe/Amsterdam"))`) }), --last date table is taken
|
||||
csc_agent as (
|
||||
select cr.RESORT,
|
||||
cr.MARKET_CODE,
|
||||
cr.MARKET_DESC,
|
||||
cr.CONFIRMATION_NO,
|
||||
cr.RESV_STATUS,
|
||||
ms.RESV_STATUS_ID,
|
||||
cr.ARRIVAL,
|
||||
cr.DEPARTURE,
|
||||
cr.UPDATE_USER,
|
||||
ca.AGENT_ID,
|
||||
case
|
||||
when date(safe_cast(cr.CHANGE_DATE as timestamp)) >= ca.CSC_START_DATE and
|
||||
date(safe_cast(cr.CHANGE_DATE as timestamp)) <= ca.CSC_END_DATE
|
||||
then 'Y'
|
||||
else 'N'
|
||||
end as CSC_AGENT_YN,
|
||||
cr.CHANGE_DATE,
|
||||
date(safe_cast(cr.CHANGE_DATE as timestamp)) DATE,
|
||||
extract(hour from safe_cast(cr.CHANGE_DATE as timestamp)) HOUR,
|
||||
cr.UPDATE_TYPE,
|
||||
mu.UPDATE_TYPE_ID,
|
||||
1 as COUNTER,
|
||||
from csc_rev_deduplicated cr
|
||||
left join ${ref("pphe_five9_stg","stg_MAPPING_CSC_AGENT")} ca
|
||||
on cr.UPDATE_USER=ca.OPERA_UPDATE_USER
|
||||
left join ${ref("pphe_five9_stg","stg_MAPPING_RESV_STATUS")} ms
|
||||
on cr.RESV_STATUS=ms.RESV_STATUS
|
||||
left join ${ref("pphe_five9_stg","stg_MAPPING_UPDATE_TYPE")} mu
|
||||
on cr.UPDATE_TYPE=mu.UPDATE_TYPE
|
||||
where row_number = 1
|
||||
and cr.UPDATE_USER is not null
|
||||
and ca.AGENT_ID is not null
|
||||
),
|
||||
act_recs as (
|
||||
select *,
|
||||
ROW_NUMBER()
|
||||
OVER (PARTITION BY UPDATE_USER, CONFIRMATION_NO, CHANGE_DATE, UPDATE_TYPE order by CSC_AGENT_YN desc)
|
||||
act
|
||||
from csc_agent
|
||||
)
|
||||
select * from act_recs
|
||||
where act = 1
|
||||
|
||||
Loading…
Reference in New Issue
Block a user