diff --git a/ORG/DM_TD_EXT_CHC_ORG.sql b/ORG/DM_TD_EXT_CHC_ORG.sql index 259c8e2..2961443 100644 --- a/ORG/DM_TD_EXT_CHC_ORG.sql +++ b/ORG/DM_TD_EXT_CHC_ORG.sql @@ -122,9 +122,7 @@ where t1.yyyymm in( --事实表与维度表来自于不同手工表,目前存在一部分audit_cod在事实表有销量,但是在维度表没有这个audit_cod,导致销量缺失。 --因此需要从事实表补全这部分audit_cod with sales as ( -select distinct PACK_COD,AUDIT_COD,DATA_SOURCE from dm.DM_TF_EXT_UNIONALL_SALES -union -select distinct PACK_COD,AUDIT_COD,DATA_SOURCE from dm.dm_tf_external_sales_thc +select distinct PACK_CODE,AUDIT_CODE,DATA_SOURCE from dm.DM_TF_EXT_UNIONALL_SALES ) ,market_pack as ( select distinct PACK_COD,MARKET,DATA_SOURCE from dm.dm_td_external_market_pack_mapping @@ -133,10 +131,10 @@ select distinct PACK_COD,MARKET,DATA_SOURCE from dm.dm_td_external_market_pack_m select distinct AUDIT_COD,MARKET,DATA_SOURCE from dm.DM_TD_EXT_CHC_ORG ) ,tmp_org as ( -select distinct a.AUDIT_COD,b.MARKET,a.DATA_SOURCE +select distinct a.AUDIT_CODE,b.MARKET,a.DATA_SOURCE from sales a -left join market_pack b on a.PACK_COD = b.PACK_COD and a.DATA_SOURCE = b.DATA_SOURCE -left join org c on a.DATA_SOURCE = c.DATA_SOURCE and a.AUDIT_COD = c.AUDIT_COD and b.MARKET = c.MARKET +left join market_pack b on a.PACK_CODE = b.PACK_COD and a.DATA_SOURCE = b.DATA_SOURCE +left join org c on a.DATA_SOURCE = c.DATA_SOURCE and a.AUDIT_CODE = c.AUDIT_COD and b.MARKET = c.MARKET where C.AUDIT_COD IS NULL ) @@ -178,7 +176,7 @@ select 'ROC' as rc_name_en, 'Vacant' as RC_Name, null as RegionCenter, -AUDIT_COD, +AUDIT_CODE, MARKET, null as bu_category, null as bu_name_en, @@ -232,4 +230,4 @@ USING hidden_market t2 on t1.data_source = t2.data_source and upper(t1.MARKET) = upper(t2.hidden_market) WHEN MATCHED THEN -DELETE \ No newline at end of file +DELETE diff --git a/ORG/DM_TD_EXT_CHPA_ORG.sql b/ORG/DM_TD_EXT_CHPA_ORG.sql index c5e02ae..c377086 100644 --- a/ORG/DM_TD_EXT_CHPA_ORG.sql +++ b/ORG/DM_TD_EXT_CHPA_ORG.sql @@ -120,9 +120,7 @@ WHERE --事实表与维度表来自于不同手工表,目前存在一部分audit_cod在事实表有销量,但是在维度表没有这个audit_cod,导致销量缺失。 --因此需要从事实表补全这部分audit_cod with sales as ( -select distinct PACK_COD,AUDIT_COD,DATA_SOURCE from dm.DM_TF_EXT_UNIONALL_SALES -union -select distinct PACK_COD,AUDIT_COD,DATA_SOURCE from dm.dm_tf_external_sales_thc +select distinct PACK_CODE,AUDIT_CODE,DATA_SOURCE from dm.DM_TF_EXT_UNIONALL_SALES ) ,market_pack as ( select distinct PACK_COD,MARKET,DATA_SOURCE from dm.dm_td_external_market_pack_mapping @@ -131,10 +129,10 @@ select distinct PACK_COD,MARKET,DATA_SOURCE from dm.dm_td_external_market_pack_m select distinct AUDIT_COD,MARKET,DATA_SOURCE from dm.DM_TD_EXT_CHPA_ORG ) ,tmp_org as ( -select distinct a.AUDIT_COD,b.MARKET,a.DATA_SOURCE +select distinct a.AUDIT_CODE,b.MARKET,a.DATA_SOURCE from sales a -left join market_pack b on a.PACK_COD = b.PACK_COD and a.DATA_SOURCE = b.DATA_SOURCE -left join org c on a.DATA_SOURCE = c.DATA_SOURCE and a.AUDIT_COD = c.AUDIT_COD and b.MARKET = c.MARKET +left join market_pack b on a.PACK_CODE = b.PACK_COD and a.DATA_SOURCE = b.DATA_SOURCE +left join org c on a.DATA_SOURCE = c.DATA_SOURCE and a.AUDIT_CODE = c.AUDIT_COD and b.MARKET = c.MARKET where C.AUDIT_COD IS NULL ) @@ -176,7 +174,7 @@ select 'ROC' as rc_name_en, 'Vacant' as RC_Name, null as RegionCenter, -AUDIT_COD, +AUDIT_CODE, MARKET, null as bu_category, null as bu_name_en, @@ -230,4 +228,4 @@ USING hidden_market t2 on t1.data_source = t2.data_source and upper(t1.MARKET) = upper(t2.hidden_market) WHEN MATCHED THEN -DELETE \ No newline at end of file +DELETE diff --git a/ORG/DM_TD_EXT_COUNTY_ORG.sql b/ORG/DM_TD_EXT_COUNTY_ORG.sql index 18ffa1a..90c35ff 100644 --- a/ORG/DM_TD_EXT_COUNTY_ORG.sql +++ b/ORG/DM_TD_EXT_COUNTY_ORG.sql @@ -70,7 +70,7 @@ DSM_NAME, MR_KCODE, MR_NAME ) -SELECT DISTINCT '' REGION_CODE,'' region_name_en,'' rc_code,'' rc_name_en,'' RegionCenter,A.AUDIT_COD,B.MARKET,C.bu_category,C.bu_name_en,C.sub_bu_name,C.sub_bu_code sub_bu_code_auth,concat(c.bu_code,'IQVIA-COUNTY(Quarterly)') bu_code_auth,A.DATA_SOURCE,1 REGION_RATIO,'','', +SELECT DISTINCT '' REGION_CODE,'' region_name_en,'' rc_code,'' rc_name_en,'' RegionCenter,A.AUDIT_CODE,B.MARKET,C.bu_category,C.bu_name_en,C.sub_bu_name,C.sub_bu_code sub_bu_code_auth,concat(c.bu_code,'IQVIA-COUNTY(Quarterly)') bu_code_auth,A.DATA_SOURCE,1 REGION_RATIO,'','', '' as TEAM, '' as MR_TRTY_CODE, '' as NSD_KCODE, @@ -83,7 +83,7 @@ SELECT DISTINCT '' REGION_CODE,'' region_name_en,'' rc_code,'' rc_name_en,'' Reg '' as MR_KCODE, '' as MR_NAME FROM DM.DM_TF_EXT_UNIONALL_SALES A -INNER JOIN DM.dm_td_external_market_pack_mapping B ON A.PACK_COD = B.PACK_COD +INNER JOIN DM.dm_td_external_market_pack_mapping B ON A.PACK_CODE = B.PACK_COD AND A.DATA_SOURCE = B.DATA_SOURCE INNER JOIN ( @@ -104,8 +104,6 @@ WHERE A.DATA_SOURCE = 'IQVIA-COUNTY(Quarterly)' --因此需要从事实表补全这部分audit_cod with sales as ( select distinct PACK_COD,AUDIT_COD,DATA_SOURCE from dm.DM_TF_EXT_UNIONALL_SALES -union -select distinct PACK_COD,AUDIT_COD,DATA_SOURCE from dm.dm_tf_external_sales_thc ) ,market_pack as ( select distinct PACK_COD,MARKET,DATA_SOURCE from dm.dm_td_external_market_pack_mapping @@ -114,10 +112,10 @@ select distinct PACK_COD,MARKET,DATA_SOURCE from dm.dm_td_external_market_pack_m select distinct AUDIT_COD,MARKET,DATA_SOURCE from dm.DM_TD_EXT_COUNTY_ORG ) ,tmp_org as ( -select distinct a.AUDIT_COD,b.MARKET,a.DATA_SOURCE +select distinct a.AUDIT_CODE,b.MARKET,a.DATA_SOURCE from sales a -left join market_pack b on a.PACK_COD = b.PACK_COD and a.DATA_SOURCE = b.DATA_SOURCE -left join org c on a.DATA_SOURCE = c.DATA_SOURCE and a.AUDIT_COD = c.AUDIT_COD and b.MARKET = c.MARKET +left join market_pack b on a.PACK_CODE = b.PACK_COD and a.DATA_SOURCE = b.DATA_SOURCE +left join org c on a.DATA_SOURCE = c.DATA_SOURCE and a.AUDIT_CODE = c.AUDIT_COD and b.MARKET = c.MARKET where C.AUDIT_COD IS NULL ) @@ -217,4 +215,4 @@ USING hidden_market t2 on t1.data_source = t2.data_source and upper(t1.MARKET) = upper(t2.hidden_market) WHEN MATCHED THEN -DELETE \ No newline at end of file +DELETE diff --git a/ORG/DM_TD_EXT_EC_ORG.sql b/ORG/DM_TD_EXT_EC_ORG.sql index 70a86e0..0019ac3 100644 --- a/ORG/DM_TD_EXT_EC_ORG.sql +++ b/ORG/DM_TD_EXT_EC_ORG.sql @@ -69,7 +69,7 @@ DSM_NAME, MR_KCODE, MR_NAME ) -SELECT DISTINCT '' REGION_CODE,'' region_name_en,'' rc_code,'' rc_name_en,'' RegionCenter,A.AUDIT_COD,B.MARKET,C.bu_category,C.bu_name_en,C.sub_bu_name,C.sub_bu_code sub_bu_code_auth,concat(c.bu_code,'EC(Monthly)') bu_code_auth,A.DATA_SOURCE,1 REGION_RATIO,'','', +SELECT DISTINCT '' REGION_CODE,'' region_name_en,'' rc_code,'' rc_name_en,'' RegionCenter,A.AUDIT_CODE,B.MARKET,C.bu_category,C.bu_name_en,C.sub_bu_name,C.sub_bu_code sub_bu_code_auth,concat(c.bu_code,'EC(Monthly)') bu_code_auth,A.DATA_SOURCE,1 REGION_RATIO,'','', '' as TEAM, '' as MR_TRTY_CODE, '' as NSD_KCODE, @@ -82,7 +82,7 @@ SELECT DISTINCT '' REGION_CODE,'' region_name_en,'' rc_code,'' rc_name_en,'' Reg '' as MR_KCODE, '' as MR_NAME FROM DM.DM_TF_EXT_UNIONALL_SALES A -INNER JOIN DM.dm_td_external_market_pack_mapping B ON A.PACK_COD = B.PACK_COD +INNER JOIN DM.dm_td_external_market_pack_mapping B ON A.PACK_CODE = B.PACK_COD AND A.DATA_SOURCE = B.DATA_SOURCE INNER JOIN ( @@ -102,9 +102,7 @@ WHERE A.DATA_SOURCE = 'EC(Monthly)' --事实表与维度表来自于不同手工表,目前存在一部分audit_cod在事实表有销量,但是在维度表没有这个audit_cod,导致销量缺失。 --因此需要从事实表补全这部分audit_cod with sales as ( -select distinct PACK_COD,AUDIT_COD,DATA_SOURCE from dm.DM_TF_EXT_UNIONALL_SALES -union -select distinct PACK_COD,AUDIT_COD,DATA_SOURCE from dm.dm_tf_external_sales_thc +select distinct PACK_CODE,AUDIT_CODE,DATA_SOURCE from dm.DM_TF_EXT_UNIONALL_SALES ) ,market_pack as ( select distinct PACK_COD,MARKET,DATA_SOURCE from dm.dm_td_external_market_pack_mapping @@ -113,10 +111,10 @@ select distinct PACK_COD,MARKET,DATA_SOURCE from dm.dm_td_external_market_pack_m select distinct AUDIT_COD,MARKET,DATA_SOURCE from dm.DM_TD_EXT_EC_ORG ) ,tmp_org as ( -select distinct a.AUDIT_COD,b.MARKET,a.DATA_SOURCE +select distinct a.AUDIT_CODE,b.MARKET,a.DATA_SOURCE from sales a -left join market_pack b on a.PACK_COD = b.PACK_COD and a.DATA_SOURCE = b.DATA_SOURCE -left join org c on a.DATA_SOURCE = c.DATA_SOURCE and a.AUDIT_COD = c.AUDIT_COD and b.MARKET = c.MARKET +left join market_pack b on a.PACK_CODE = b.PACK_COD and a.DATA_SOURCE = b.DATA_SOURCE +left join org c on a.DATA_SOURCE = c.DATA_SOURCE and a.AUDIT_CODE = c.AUDIT_COD and b.MARKET = c.MARKET where C.AUDIT_COD IS NULL ) @@ -158,7 +156,7 @@ select 'ROC' as rc_name_en, 'Vacant' as RC_Name, null as RegionCenter, -AUDIT_COD, +AUDIT_CODE, MARKET, null as bu_category, null as bu_name_en, @@ -216,4 +214,4 @@ USING hidden_market t2 on t1.data_source = t2.data_source and upper(t1.MARKET) = upper(t2.hidden_market) WHEN MATCHED THEN -DELETE \ No newline at end of file +DELETE diff --git a/ORG/DM_TD_EXT_THC_ORG.sql b/ORG/DM_TD_EXT_THC_ORG.sql index 5319fa7..6b388fe 100644 --- a/ORG/DM_TD_EXT_THC_ORG.sql +++ b/ORG/DM_TD_EXT_THC_ORG.sql @@ -227,9 +227,7 @@ ON t1.PACK_COD = t2.PACK_COD --事实表与维度表来自于不同手工表,目前存在一部分audit_cod在事实表有销量,但是在维度表没有这个audit_cod,导致销量缺失。 --因此需要从事实表补全这部分audit_cod with sales as ( -select distinct PACK_COD,AUDIT_COD,DATA_SOURCE from dm.DM_TF_EXT_UNIONALL_SALES -union -select distinct PACK_COD,AUDIT_COD,DATA_SOURCE from dm.dm_tf_external_sales_thc +select distinct PACK_CODE,AUDIT_CODE,DATA_SOURCE from dm.DM_TF_EXT_UNIONALL_SALES ) ,market_pack as ( select distinct PACK_COD,MARKET,DATA_SOURCE from dm.dm_td_external_market_pack_mapping @@ -238,10 +236,10 @@ select distinct PACK_COD,MARKET,DATA_SOURCE from dm.dm_td_external_market_pack_m select distinct AUDIT_COD,MARKET,DATA_SOURCE from dm.DM_TD_EXT_THC_ORG ) ,tmp_org as ( -select distinct a.AUDIT_COD,b.MARKET,a.DATA_SOURCE +select distinct a.AUDIT_CODE,b.MARKET,a.DATA_SOURCE from sales a -left join market_pack b on a.PACK_COD = b.PACK_COD and a.DATA_SOURCE = b.DATA_SOURCE -left join org c on a.DATA_SOURCE = c.DATA_SOURCE and a.AUDIT_COD = c.AUDIT_COD and b.MARKET = c.MARKET +left join market_pack b on a.PACK_CODE = b.PACK_COD and a.DATA_SOURCE = b.DATA_SOURCE +left join org c on a.DATA_SOURCE = c.DATA_SOURCE and a.AUDIT_CODE = c.AUDIT_COD and b.MARKET = c.MARKET where C.AUDIT_COD IS NULL ) @@ -283,7 +281,7 @@ select 'ROC' as rc_name_en, 'Vacant' as RC_Name, null as RegionCenter, -AUDIT_COD, +AUDIT_CODE, MARKET, null as bu_category, null as bu_name_en, @@ -337,4 +335,4 @@ USING hidden_market t2 on t1.data_source = t2.data_source and upper(t1.MARKET) = upper(t2.hidden_market) WHEN MATCHED THEN -DELETE \ No newline at end of file +DELETE diff --git a/ORG/DM_TD_EXT_XIEHE_ORG.sql b/ORG/DM_TD_EXT_XIEHE_ORG.sql index aa4d781..c094346 100644 --- a/ORG/DM_TD_EXT_XIEHE_ORG.sql +++ b/ORG/DM_TD_EXT_XIEHE_ORG.sql @@ -166,9 +166,7 @@ where --事实表与维度表来自于不同手工表,目前存在一部分audit_cod在事实表有销量,但是在维度表没有这个audit_cod,导致销量缺失。 --因此需要从事实表补全这部分audit_cod with sales as ( -select distinct PACK_COD,AUDIT_COD,DATA_SOURCE from dm.DM_TF_EXT_UNIONALL_SALES -union -select distinct PACK_COD,AUDIT_COD,DATA_SOURCE from dm.dm_tf_external_sales_thc +select distinct PACK_CODE,AUDIT_CODE,DATA_SOURCE from dm.DM_TF_EXT_UNIONALL_SALES ) ,market_pack as ( select distinct PACK_COD,MARKET,DATA_SOURCE from dm.dm_td_external_market_pack_mapping @@ -177,10 +175,10 @@ select distinct PACK_COD,MARKET,DATA_SOURCE from dm.dm_td_external_market_pack_m select distinct AUDIT_COD,MARKET,DATA_SOURCE from dm.DM_TD_EXT_XIEHE_ORG ) ,tmp_org as ( -select distinct a.AUDIT_COD,b.MARKET,a.DATA_SOURCE +select distinct a.AUDIT_CODE,b.MARKET,a.DATA_SOURCE from sales a -left join market_pack b on a.PACK_COD = b.PACK_COD and a.DATA_SOURCE = b.DATA_SOURCE -left join org c on a.DATA_SOURCE = c.DATA_SOURCE and a.AUDIT_COD = c.AUDIT_COD and b.MARKET = c.MARKET +left join market_pack b on a.PACK_CODE = b.PACK_COD and a.DATA_SOURCE = b.DATA_SOURCE +left join org c on a.DATA_SOURCE = c.DATA_SOURCE and a.AUDIT_CODE = c.AUDIT_COD and b.MARKET = c.MARKET where C.AUDIT_COD IS NULL ) @@ -222,7 +220,7 @@ select 'ROC' as rc_name_en, 'Vacant' as RC_Name, null as RegionCenter, -AUDIT_COD, +AUDIT_CODE, MARKET, null as bu_category, null as bu_name_en, @@ -276,4 +274,4 @@ USING hidden_market t2 on t1.data_source = t2.data_source and upper(t1.MARKET) = upper(t2.hidden_market) WHEN MATCHED THEN -DELETE \ No newline at end of file +DELETE diff --git a/Retail/13 DM_TF_EXT_RETAIL_SALES.sql b/Retail/13 DM_TF_EXT_RETAIL_SALES.sql index 7eeb536..f387796 100644 --- a/Retail/13 DM_TF_EXT_RETAIL_SALES.sql +++ b/Retail/13 DM_TF_EXT_RETAIL_SALES.sql @@ -59,13 +59,7 @@ SELECT A.PACK_FLAG, A.brand_flag PROD_FLAG, 0 DTP_FLAG, - case - when - max(lower(C.CMPS_DES)) in ('atorvastatin', 'rosuvastatin', 'esomeprazole', 'omeprazole') - then - 1 - else 0 - end as cmps_flag, + null as cmps_flag, ------------------------------------- --EC数据标签-------------------------- '' PLATFORM_TYPE, @@ -91,14 +85,6 @@ SELECT ------------------------------------- FROM dm.dm_zk_retail_sales A - LEFT JOIN ( - select DISTINCT - iqvia_pack_code, - CMPS_DES - from - dm.dm_zk_retail_pack_property - ) C - ON A.iqvia_pack_code = C.iqvia_pack_code where A.YYYYMM >= '202001' GROUP BY @@ -181,4 +167,4 @@ SELECT FROM_UTC_TIMESTAMP (CURRENT_TIMESTAMP(), 'UTC+8') AS ETL_UPDATE_DT FROM RETAIL_SALES -; \ No newline at end of file +; diff --git a/UNIONALL/DM_TF_EXT_UNIONALL_SALES_MAPPING.sql b/UNIONALL/DM_TF_EXT_UNIONALL_SALES_MAPPING.sql index 3ae70af..4dbf281 100644 --- a/UNIONALL/DM_TF_EXT_UNIONALL_SALES_MAPPING.sql +++ b/UNIONALL/DM_TF_EXT_UNIONALL_SALES_MAPPING.sql @@ -57,6 +57,138 @@ -- COMMAND ---------- +--Retail +CREATE OR REPLACE TEMPORARY VIEW RETAIL_EXTERNAL_SALES AS +SELECT + T0.MARKET, + T0.KEY_COMPETITOR, + T0.CLASS, + CONCAT( + SUBSTR(T0.YYYYMM, 1, 4), + CASE + WHEN SUBSTR(T0.YYYYMM, 5, 2) IN ('01','02','03') THEN '03' + WHEN SUBSTR(T0.YYYYMM, 5, 2) IN ('04','05','06') THEN '06' + WHEN SUBSTR(T0.YYYYMM, 5, 2) IN ('07','08','09') THEN '09' + ELSE '12' + END + ) AS YYYYMM, + T0.PACK_COD, + T0.CORP_COD, + T0.AUDIT_COD, + T0.PLATFORM_TYPE, + T0.STORE_NAME, + T0.STORE_TYPE, + T0.REGION_TYPE, + T0.DATA_SOURCE, + CASE WHEN P.MARKET IS NOT NULL THEN 1 + WHEN T0.PACK_FLAG = 0 THEN 0 ELSE 2 END PACK_FLAG, + CASE WHEN P.MARKET IS NOT NULL THEN 1 + WHEN T0.MARKET = 'Metoprolol Succinate Market' AND PACK.PROD_DES = 'BETALOC ZOK' THEN 1 + WHEN T0.MARKET = 'Atorvastatin Market' AND PACK.PROD_DES = 'LIPITOR' THEN 1 + WHEN T0.MARKET = 'AZITHROMYCIN Market' AND PACK.PROD_DES = 'ZITHROMAX' THEN 1 + WHEN T0.PROD_FLAG = 0 THEN 0 ELSE 2 END PROD_FLAG, + T0.DTP_FLAG, + CASE WHEN P.MARKET IS NOT NULL THEN 1 + WHEN T0.MARKET = 'Metoprolol Succinate Market' AND PACK.PROD_DES = 'BETALOC ZOK' THEN 1 + WHEN T0.MARKET = 'Atorvastatin Market' AND PACK.PROD_DES = 'LIPITOR' THEN 1 + WHEN T0.MARKET = 'AZITHROMYCIN Market' AND PACK.PROD_DES = 'ZITHROMAX' THEN 1 + WHEN PACK.CMPS_DES in ('AZITHROMYCIN', 'METOPROLOL', 'ATORVASTATIN') THEN 1 + ELSE 0 END CMPS_FLAG, + T0.NEW_CODE, + PACK.PROD_COD, + PACK.CMPS_COD, + T0.INST_CODE, + T0.AIA_HP_FLAG, + T0.DEPT_NAME, + T0.H_LEVEL, + T0.REIMBURSE, + T0.REIMBURSE_TYPE, + T0.PRESCRIPTION_TYPE, + T0.VA, + T0.UT, + T0.CU, + T0.PT, + T0.SALES_UNIT_CAL, + T0.SALES_UNIT_CAL_LY, + T0.SALES_VALUE_CAL, + T0.SALES_VALUE_CAL_LY, + T0.CONUTING_UNIT, + T0.CONUTING_UNIT_LY, + T0.PDOT, + T0.PDOT_LY, + T0.PRESCRIPTION, + T0.PRESCRIPTION_LY, + 1 MERGED_DATA_DTP_OTHERS +FROM + DM.DM_TF_EXT_UNIONALL_MARKET_SALES AS T0 + LEFT JOIN ( + SELECT + OTHERS_MONTH + FROM + tmp.tmp_dm_td_ext_retail_niad_month + ) T1 --Retail取非niad先来数据部分 + LEFT JOIN tmp.tmp_td_ext_market_hide_flag P + ON T0.DATA_SOURCE = P.data_source AND T0.MARKET = P.market + LEFT JOIN dm.dm_td_external_packinfo PACK + ON T0.PACK_COD = PACK.PACK_COD AND T0.DATA_SOURCE = PACK.DATA_SOURCE +WHERE + T0.DATA_SOURCE = 'Retail(Quarterly)' + AND T0.YYYYMM<=T1.others_month + +-- COMMAND ---------- + +CREATE OR REPLACE TEMPORARY VIEW RETAIL_EXTERNAL_SALES_ALL AS +SELECT + T0.MARKET, + T0.KEY_COMPETITOR, + T0.CLASS, + T0.YYYYMM, + T0.PACK_COD, + T0.CORP_COD, + T0.AUDIT_COD, + T0.PLATFORM_TYPE, + T0.STORE_NAME, + T0.STORE_TYPE, + T0.REGION_TYPE, + T0.DATA_SOURCE, + CASE WHEN T1.PACK_COD IS NOT NULL THEN 1 ELSE T0.PACK_FLAG END PACK_FLAG, + CASE WHEN T2.PROD_COD IS NOT NULL THEN 1 ELSE T0.PROD_FLAG END PROD_FLAG, + T0.DTP_FLAG, + CASE WHEN T3.CMPS_COD IS NOT NULL THEN 1 ELSE T0.CMPS_FLAG END CMPS_FLAG, + T0.NEW_CODE, + T0.INST_CODE, + T0.AIA_HP_FLAG, + T0.DEPT_NAME, + T0.H_LEVEL, + T0.REIMBURSE, + T0.REIMBURSE_TYPE, + T0.PRESCRIPTION_TYPE, + T0.VA, + T0.UT, + T0.CU, + T0.PT, + T0.SALES_UNIT_CAL, + T0.SALES_UNIT_CAL_LY, + T0.SALES_VALUE_CAL, + T0.SALES_VALUE_CAL_LY, + T0.CONUTING_UNIT, + T0.CONUTING_UNIT_LY, + T0.PDOT, + T0.PDOT_LY, + T0.PRESCRIPTION, + T0.PRESCRIPTION_LY, + T0.MERGED_DATA_DTP_OTHERS +FROM + RETAIL_EXTERNAL_SALES AS T0 +LEFT JOIN (SELECT DISTINCT PACK_COD FROM RETAIL_EXTERNAL_SALES WHERE PACK_FLAG = 1) T1 + ON T0.PACK_COD = T1.PACK_COD +LEFT JOIN (SELECT DISTINCT PROD_COD FROM RETAIL_EXTERNAL_SALES WHERE PROD_FLAG = 1) T2 + ON T0.PROD_COD = T2.PROD_COD +LEFT JOIN (SELECT DISTINCT CMPS_COD FROM RETAIL_EXTERNAL_SALES WHERE CMPS_FLAG = 1) T3 + ON T0.CMPS_COD = T3.CMPS_COD + +-- COMMAND ---------- + CREATE OR REPLACE TEMPORARY VIEW ALL_EXTERNAL_SALES AS --DTP SELECT @@ -103,68 +235,6 @@ FROM DM.DM_TF_EXT_UNIONALL_MARKET_SALES AS T0 WHERE T0.DATA_SOURCE = 'DTP(Quarterly)' - ---Retail -UNION ALL -SELECT - T0.MARKET, - T0.KEY_COMPETITOR, - T0.CLASS, - CONCAT( - SUBSTR(T0.YYYYMM, 1, 4), - CASE - WHEN SUBSTR(T0.YYYYMM, 5, 2) IN ('01','02','03') THEN '03' - WHEN SUBSTR(T0.YYYYMM, 5, 2) IN ('04','05','06') THEN '06' - WHEN SUBSTR(T0.YYYYMM, 5, 2) IN ('07','08','09') THEN '09' - ELSE '12' - END - ) AS YYYYMM, - T0.PACK_COD, - T0.CORP_COD, - T0.AUDIT_COD, - T0.PLATFORM_TYPE, - T0.STORE_NAME, - T0.STORE_TYPE, - T0.REGION_TYPE, - T0.DATA_SOURCE, - T0.PACK_FLAG, - T0.PROD_FLAG, - T0.DTP_FLAG, - T0.CMPS_FLAG, - T0.NEW_CODE, - T0.INST_CODE, - T0.AIA_HP_FLAG, - T0.DEPT_NAME, - T0.H_LEVEL, - T0.REIMBURSE, - T0.REIMBURSE_TYPE, - T0.PRESCRIPTION_TYPE, - T0.VA, - T0.UT, - T0.CU, - T0.PT, - T0.SALES_UNIT_CAL, - T0.SALES_UNIT_CAL_LY, - T0.SALES_VALUE_CAL, - T0.SALES_VALUE_CAL_LY, - T0.CONUTING_UNIT, - T0.CONUTING_UNIT_LY, - T0.PDOT, - T0.PDOT_LY, - T0.PRESCRIPTION, - T0.PRESCRIPTION_LY, - 1 MERGED_DATA_DTP_OTHERS -FROM - DM.DM_TF_EXT_UNIONALL_MARKET_SALES AS T0 - LEFT JOIN ( - SELECT - OTHERS_MONTH - FROM - tmp.tmp_dm_td_ext_retail_niad_month - ) T1 --Retail取非niad先来数据部分 -WHERE - T0.DATA_SOURCE = 'Retail(Quarterly)' - AND T0.YYYYMM<=T1.others_month --EC UNION ALL SELECT @@ -226,6 +296,50 @@ FROM WHERE T0.DATA_SOURCE = 'EC(Monthly)' AND SUBSTR(T0.YYYYMM, 5, 2) IN ('03', '06', '09', '12') +UNION ALL +--RETAIL +SELECT + T0.MARKET, + T0.KEY_COMPETITOR, + T0.CLASS, + T0.YYYYMM, + T0.PACK_COD, + T0.CORP_COD, + T0.AUDIT_COD, + T0.PLATFORM_TYPE, + T0.STORE_NAME, + T0.STORE_TYPE, + T0.REGION_TYPE, + T0.DATA_SOURCE, + T0.PACK_FLAG, + T0.PROD_FLAG, + T0.DTP_FLAG, + T0.CMPS_FLAG, + T0.NEW_CODE, + T0.INST_CODE, + T0.AIA_HP_FLAG, + T0.DEPT_NAME, + T0.H_LEVEL, + T0.REIMBURSE, + T0.REIMBURSE_TYPE, + T0.PRESCRIPTION_TYPE, + T0.VA, + T0.UT, + T0.CU, + T0.PT, + T0.SALES_UNIT_CAL, + T0.SALES_UNIT_CAL_LY, + T0.SALES_VALUE_CAL, + T0.SALES_VALUE_CAL_LY, + T0.CONUTING_UNIT, + T0.CONUTING_UNIT_LY, + T0.PDOT, + T0.PDOT_LY, + T0.PRESCRIPTION, + T0.PRESCRIPTION_LY, + T0.MERGED_DATA_DTP_OTHERS +FROM + RETAIL_EXTERNAL_SALES_ALL AS T0 --OTHERS DATA SOURCE UNION ALL SELECT @@ -275,6 +389,14 @@ WHERE -- COMMAND ---------- + + +-- COMMAND ---------- + +select distinct PACK_FLAG,PROD_FLAG from DM.DM_TF_EXT_UNIONALL_MARKET_SALES where DATA_SOURCE = 'Retail(Quarterly)' + +-- COMMAND ---------- + create or replace table tmp.tmp_tf_ext_aia_target_inst -- LOCATION 'abfss://master@azcdatalakeprd.dfs.core.chinacloudapi.cn/TMP/tmp_tf_ext_aia_target_inst'; -- 上面是生产环境location,下面是测试环境location @@ -351,7 +473,7 @@ SELECT END AS CONUTING_UNIT, CASE WHEN A.CONUTING_UNIT_LY = 0 THEN NULL - ELSE CAST(A.CONUTING_UNIT_LY AS DECIMAL(35, 10)) + https://adb-1064580724995799.3.databricks.azure.cn/editor/notebooks/3456519074298505?o=1064580724995799$0ELSE CAST(A.CONUTING_UNIT_LY AS DECIMAL(35, 10)) END AS CONUTING_UNIT_LY, CASE WHEN A.PDOT = 0 THEN NULL