diff --git a/08 dm_td_external_corp.sql b/08 dm_td_external_corp.sql index 350826a..8297ccf 100644 --- a/08 dm_td_external_corp.sql +++ b/08 dm_td_external_corp.sql @@ -12,7 +12,7 @@ --补充Retail直取中DTP的手工文件里的pack_cod ---------------------------------------------------------------------------- with external_sales as ( -select distinct PACK_COD +select distinct PACK_CODE AS PACK_COD from dm.DM_TF_EXT_UNIONALL_SALES union select distinct pack_cod @@ -80,4 +80,4 @@ where CORP_COD in ( where a.CORP_COD = b.CORP_COD ) ) -group by 1 \ No newline at end of file +group by 1 diff --git a/Retail/04 map_to_dws_table.ipynb b/Retail/04 map_to_dws_table.ipynb index d38e458..f33ef51 100644 --- a/Retail/04 map_to_dws_table.ipynb +++ b/Retail/04 map_to_dws_table.ipynb @@ -29,10 +29,20 @@ "implicitDf": true, "rowLimit": 10000 }, + "finishTime": 1777430517044, "inputWidgets": {}, "nuid": "1168666b-255b-44a3-968b-4156c93dad53", "showTitle": false, - "tableResultSettingsMap": {}, + "startTime": 1777430506637, + "submitTime": 1777430498072, + "tableResultSettingsMap": { + "0": { + "dataGridStateBlob": "{\"version\":1,\"tableState\":{\"columnPinning\":{\"left\":[\"#row_number#\"],\"right\":[]},\"columnSizing\":{},\"columnVisibility\":{}},\"settings\":{\"columns\":{}},\"syncTimestamp\":1777430717962}", + "filterBlob": null, + "queryPlanFiltersBlob": null, + "tableResultIndex": 0 + } + }, "title": "" } }, @@ -311,7 +321,22 @@ " pack_flag,\n", " brand_flag\n", "from (\n", - " select * from tmp_final_sales where market <> 'NIAD'\n", + " select \n", + " yyyymm,\n", + " iqvia_pack_code,\n", + " zk_product_id,\n", + " prod_des_c,\n", + " PROD_MAPPING,\n", + " province_city,\n", + " market,\n", + " sales_value,\n", + " sales_value_ly,\n", + " sales_unit,\n", + " sales_unit_ly,\n", + " counting_unit,\n", + " counting_unit_ly,\n", + " pack_flag,\n", + " brand_flag from tmp_final_sales where market <> 'NIAD'\n", " union all\n", " select \n", " yyyymm,\n", @@ -362,7 +387,7 @@ "language": "python", "notebookMetadata": { "mostRecentlyExecutedCommandWithImplicitDF": { - "commandId": 1969542701077462, + "commandId": 7839378222846108, "dataframes": [ "_sqldf" ] diff --git a/UNIONALL/DM_TF_EXT_UNIONALL_SALES_MAPPING.sql b/UNIONALL/DM_TF_EXT_UNIONALL_SALES_MAPPING.sql index d060309..3ae70af 100644 --- a/UNIONALL/DM_TF_EXT_UNIONALL_SALES_MAPPING.sql +++ b/UNIONALL/DM_TF_EXT_UNIONALL_SALES_MAPPING.sql @@ -110,7 +110,15 @@ SELECT T0.MARKET, T0.KEY_COMPETITOR, T0.CLASS, - T0.YYYYMM, + 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, @@ -156,14 +164,22 @@ FROM ) T1 --Retail取非niad先来数据部分 WHERE T0.DATA_SOURCE = 'Retail(Quarterly)' - AND SUBSTR(T0.YYYYMM, 5, 2) IN ('03', '06', '09', '12') + AND T0.YYYYMM<=T1.others_month --EC UNION ALL SELECT T0.MARKET, T0.KEY_COMPETITOR, T0.CLASS, - T0.YYYYMM, + 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, @@ -455,4 +471,4 @@ SELECT FROM DM_TF_EXT_UNIONALL_SALES_MAPPING --- WHERE DATA_SOURCE IN ('Retail(Quarterly)', 'EC(Monthly)') \ No newline at end of file +-- WHERE DATA_SOURCE IN ('Retail(Quarterly)', 'EC(Monthly)') diff --git a/UNIONALL/DM_TF_EXT_UNIONALL_SALES_MAPPING_NIAD.sql b/UNIONALL/DM_TF_EXT_UNIONALL_SALES_MAPPING_NIAD.sql index e4aeed9..c9b8103 100644 --- a/UNIONALL/DM_TF_EXT_UNIONALL_SALES_MAPPING_NIAD.sql +++ b/UNIONALL/DM_TF_EXT_UNIONALL_SALES_MAPPING_NIAD.sql @@ -29,7 +29,6 @@ -- PLATFORM STRING, -- STORE_NAME STRING, -- STORE_TYPE STRING, --- PRICE STRING, -- DIGITAL_SPREAD_RATE STRING, -- WEIGHTED_SPREAD_RATE STRING) -- USING delta @@ -127,8 +126,7 @@ SELECT /*+ BROADCAST(m) */ STORE_NAME, STORE_TYPE, - -- 零售铺货率 & 价格(仅 Retail 行有值,EC 行为 NULL) - CAST(kpi.PRICE AS string) AS PRICE, + -- 零售铺货率(仅 Retail 行有值,EC 行为 NULL) CAST(round(kpi.DIGITAL_SPREAD_RATE,2) AS string)||'%' AS DIGITAL_SPREAD_RATE, CAST(round(kpi.WEIGHTED_SPREAD_RATE,2) AS string)||'%' AS WEIGHTED_SPREAD_RATE