DBR更新,包含haoyi的调整
This commit is contained in:
2026-05-02 06:48:24 +00:00
parent 8b73f0cc7c
commit 3a03ba1ad2
6 changed files with 724 additions and 219 deletions

View File

@@ -1829,242 +1829,250 @@
"byteLimit": 2048000,
"rowLimit": 10000
},
"finishTime": 1777652323660,
"inputWidgets": {},
"nuid": "f8d0befe-3de4-48a8-ac53-cdc19c897d0f",
"showTitle": false,
"submitTime": 1777537485091,
"startTime": 1777652315675,
"submitTime": 1777652314433,
"tableResultSettingsMap": {},
"title": ""
}
},
"outputs": [],
"source": [
"-- ============================================================\n",
"-- 目标表tmp.tmp_zk_ec_sales_kpi_tmp\n",
"-- 功能B2C 电商直取数据 → KPI 宽表QTD 粒度)\n",
"-- 优化corp_map / brand_base / ta_base 各物化一次,避免重复扫表\n",
"-- ============================================================\n",
"INSERT OVERWRITE TABLE tmp.tmp_zk_ec_sales_kpi_tmp\n",
"-- -- ============================================================\n",
"-- -- 目标表tmp.tmp_zk_ec_sales_kpi_tmp\n",
"-- -- 功能B2C 电商直取数据 → KPI 宽表QTD 粒度)\n",
"-- -- 优化corp_map / brand_base / ta_base 各物化一次,避免重复扫表\n",
"-- -- ============================================================\n",
"-- INSERT OVERWRITE TABLE tmp.tmp_zk_ec_sales_kpi_tmp\n",
"\n",
"WITH\n",
"-- WITH\n",
"\n",
"-- ────────────────────────────────────────────────────────────\n",
"-- CTE 1企业编码映射原 7 处重复子查询,合并为一次扫描)\n",
"-- 东阳光仅取集团层ZK_Prod_C IS NULL其他企业全量\n",
"-- 小表,适合 BROADCAST\n",
"-- ────────────────────────────────────────────────────────────\n",
"corp_map AS (\n",
" SELECT DISTINCT ZK_Corp_C, CORP_COD\n",
" FROM dwd.dwd_inc_gnd_retail_b2c_label_total\n",
" WHERE (ZK_Corp_C = '东阳光' AND ZK_Prod_C IS NULL)\n",
" OR ZK_Corp_C != '东阳光'\n",
"),\n",
"-- -- ────────────────────────────────────────────────────────────\n",
"-- -- CTE 1企业编码映射原 7 处重复子查询,合并为一次扫描)\n",
"-- -- 东阳光仅取集团层ZK_Prod_C IS NULL其他企业全量\n",
"-- -- 小表,适合 BROADCAST\n",
"-- -- ────────────────────────────────────────────────────────────\n",
"-- corp_map AS (\n",
"-- SELECT DISTINCT ZK_Corp_C, CORP_COD\n",
"-- FROM dwd.dwd_inc_gnd_retail_b2c_label_total\n",
"-- WHERE (ZK_Corp_C = '东阳光' AND ZK_Prod_C IS NULL)\n",
"-- OR ZK_Corp_C != '东阳光'\n",
"-- ),\n",
"\n",
"-- ────────────────────────────────────────────────────────────\n",
"-- CTE 2B2C Top10 品牌驱动数据(当期 + 去年同期一次性关联)\n",
"-- 原 5 个 UNION 分支各自关联一次,现合并为单次自连接\n",
"-- ────────────────────────────────────────────────────────────\n",
"brand_base AS (\n",
" SELECT\n",
" /*+ BROADCAST(m) */\n",
" m.CORP_COD,\n",
" a.ytd,\n",
" a.platform,\n",
" CASE WHEN a.store_type = '三方' THEN '第三方' ELSE a.store_type END AS store_type,\n",
" CASE WHEN UPPER(a.rank) = 'TTL MKT' THEN 'Y' ELSE 'N' END AS total_flag,\n",
" -- 当期指标\n",
" a.yoy_gr,\n",
" a.top1_brand_gr,\n",
" a.top1_brand_val,\n",
" a.growth_driver_brand_val,\n",
" a.growth_driver_brand_gr,\n",
" -- 去年同期指标ytd + 4 偏移)\n",
" c.yoy_gr AS yoy_gr_ly,\n",
" c.top1_brand_gr AS top1_brand_gr_ly,\n",
" c.growth_driver_brand_gr AS growth_driver_brand_gr_ly\n",
" FROM dwd.dwd_gnd_ec_b2c_top10_drives_brand a\n",
" LEFT JOIN corp_map m\n",
" ON a.corp = m.ZK_Corp_C\n",
" LEFT JOIN dwd.dwd_gnd_ec_b2c_top10_drives_brand c -- 同比:时间偏移 4 期\n",
" ON a.corp = c.corp\n",
" AND a.ytd = c.ytd + 4\n",
" AND a.platform = c.platform\n",
" AND a.store_type = c.store_type\n",
"),\n",
"-- -- ────────────────────────────────────────────────────────────\n",
"-- -- CTE 2B2C Top10 品牌驱动数据(当期 + 去年同期一次性关联)\n",
"-- -- 原 5 个 UNION 分支各自关联一次,现合并为单次自连接\n",
"-- -- ────────────────────────────────────────────────────────────\n",
"-- brand_base AS (\n",
"-- SELECT\n",
"-- /*+ BROADCAST(m) */\n",
"-- m.CORP_COD,\n",
"-- a.ytd,\n",
"-- a.platform,\n",
"-- CASE WHEN a.store_type = '三方' THEN '第三方' ELSE a.store_type END AS store_type,\n",
"-- CASE WHEN UPPER(a.rank) = 'TTL MKT' THEN 'Y' ELSE 'N' END AS total_flag,\n",
"-- -- 当期指标\n",
"-- a.yoy_gr,\n",
"-- a.top1_brand_gr,\n",
"-- a.top1_brand_val,\n",
"-- a.growth_driver_brand_val,\n",
"-- a.growth_driver_brand_gr,\n",
"-- -- 去年同期指标ytd + 4 偏移)\n",
"-- c.yoy_gr AS yoy_gr_ly,\n",
"-- c.top1_brand_gr AS top1_brand_gr_ly,\n",
"-- c.growth_driver_brand_gr AS growth_driver_brand_gr_ly\n",
"-- FROM dwd.dwd_gnd_ec_b2c_top10_drives_brand a\n",
"-- LEFT JOIN corp_map m\n",
"-- ON a.corp = m.ZK_Corp_C\n",
"-- LEFT JOIN dwd.dwd_gnd_ec_b2c_top10_drives_brand c -- 同比:时间偏移 4 期\n",
"-- ON a.corp = c.corp\n",
"-- AND a.ytd = c.ytd + 4\n",
"-- AND a.platform = c.platform\n",
"-- AND a.store_type = c.store_type\n",
"-- ),\n",
"\n",
"-- ────────────────────────────────────────────────────────────\n",
"-- CTE 3TA 概览数据(当期 + 去年同期一次性关联)\n",
"-- 原 2 个 UNION 分支各自关联一次,现合并为单次自连接\n",
"-- ────────────────────────────────────────────────────────────\n",
"ta_base AS (\n",
" SELECT\n",
" /*+ BROADCAST(m) */\n",
" m.CORP_COD,\n",
" a.ytd,\n",
" a.platform,\n",
" a.store_type,\n",
" a.ta,\n",
" a.rank,\n",
" CASE WHEN LOWER(a.rank) = 'total' THEN 'Y' ELSE 'N' END AS total_flag,\n",
" REPLACE(a.sales_value, ',', '') AS sales_value, -- 清除千位分隔符\n",
" REPLACE(c.sales_value, ',', '') AS sales_value_ly\n",
" FROM dwd.dwd_gnd_ec_ta_overview a\n",
" LEFT JOIN corp_map m\n",
" ON a.corp_des = m.ZK_Corp_C -- 注意:此处关联键为 corp_des\n",
" LEFT JOIN dwd.dwd_gnd_ec_ta_overview c -- 同比:时间偏移 4 期\n",
" ON a.ytd = c.ytd + 4\n",
" AND a.corp_des = c.corp_des\n",
" AND a.platform = c.platform\n",
" AND a.store_type = c.store_type\n",
" AND a.ta = c.ta\n",
")\n",
"-- -- ────────────────────────────────────────────────────────────\n",
"-- -- CTE 3TA 概览数据(当期 + 去年同期一次性关联)\n",
"-- -- 原 2 个 UNION 分支各自关联一次,现合并为单次自连接\n",
"-- -- ────────────────────────────────────────────────────────────\n",
"-- ta_base AS (\n",
"-- SELECT\n",
"-- /*+ BROADCAST(m) */\n",
"-- m.CORP_COD,\n",
"-- a.ytd,\n",
"-- a.platform,\n",
"-- a.store_type,\n",
"-- a.ta,\n",
"-- a.rank,\n",
"-- CASE WHEN LOWER(a.rank) = 'total' THEN 'Y' ELSE 'N' END AS total_flag,\n",
"-- REPLACE(a.sales_value, ',', '') AS sales_value, -- 清除千位分隔符\n",
"-- REPLACE(c.sales_value, ',', '') AS sales_value_ly\n",
"-- FROM dwd.dwd_gnd_ec_ta_overview a\n",
"-- LEFT JOIN corp_map m\n",
"-- ON a.corp_des = m.ZK_Corp_C -- 注意:此处关联键为 corp_des\n",
"-- LEFT JOIN dwd.dwd_gnd_ec_ta_overview c -- 同比:时间偏移 4 期\n",
"-- ON a.ytd = c.ytd + 4\n",
"-- AND a.corp_des = c.corp_des\n",
"-- AND a.platform = c.platform\n",
"-- AND a.store_type = c.store_type\n",
"-- AND a.ta = c.ta\n",
"-- )\n",
"\n",
"-- ════════════════════════════════════════════════════════════\n",
"-- KPI 1市场整体 YOY 增长率top_yoygr— 数值型\n",
"-- ════════════════════════════════════════════════════════════\n",
"SELECT\n",
" CORP_COD,\n",
" '' AS ytd,\n",
" ytd AS ytd_src,\n",
" platform,\n",
" store_type,\n",
" 'ROC' AS geo_key,\n",
" 'top_yoygr' AS KPI_name,\n",
" yoy_gr AS Kpi_val,\n",
" yoy_gr_ly AS Kpi_val_ly,\n",
" '' AS str_kpi_val, '' AS str_kpi_val_ly,\n",
" '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
" total_flag,\n",
" '' AS ta\n",
"FROM brand_base\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- -- KPI 1市场整体 YOY 增长率top_yoygr— 数值型\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- SELECT\n",
"-- CORP_COD,\n",
"-- '' AS ytd,\n",
"-- ytd AS ytd_src,\n",
"-- platform,\n",
"-- store_type,\n",
"-- 'ROC' AS geo_key,\n",
"-- 'top_yoygr' AS KPI_name,\n",
"-- yoy_gr AS Kpi_val,\n",
"-- yoy_gr_ly AS Kpi_val_ly,\n",
"-- '' AS str_kpi_val, '' AS str_kpi_val_ly,\n",
"-- '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
"-- total_flag,\n",
"-- '' AS ta\n",
"-- FROM brand_base\n",
"\n",
"UNION ALL\n",
"-- UNION ALL\n",
"\n",
"-- ════════════════════════════════════════════════════════════\n",
"-- KPI 2Top1 品牌增长率top1_brand_gr— 数值型\n",
"-- ════════════════════════════════════════════════════════════\n",
"SELECT\n",
" CORP_COD,\n",
" '' AS ytd,\n",
" ytd AS ytd_src,\n",
" platform,\n",
" store_type,\n",
" 'ROC' AS geo_key,\n",
" 'top1_brand_gr' AS KPI_name,\n",
" top1_brand_gr AS Kpi_val,\n",
" top1_brand_gr_ly AS Kpi_val_ly,\n",
" '' AS str_kpi_val, '' AS str_kpi_val_ly,\n",
" '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
" total_flag,\n",
" '' AS ta\n",
"FROM brand_base\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- -- KPI 2Top1 品牌增长率top1_brand_gr— 数值型\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- SELECT\n",
"-- CORP_COD,\n",
"-- '' AS ytd,\n",
"-- ytd AS ytd_src,\n",
"-- platform,\n",
"-- store_type,\n",
"-- 'ROC' AS geo_key,\n",
"-- 'top1_brand_gr' AS KPI_name,\n",
"-- top1_brand_gr AS Kpi_val,\n",
"-- top1_brand_gr_ly AS Kpi_val_ly,\n",
"-- '' AS str_kpi_val, '' AS str_kpi_val_ly,\n",
"-- '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
"-- total_flag,\n",
"-- '' AS ta\n",
"-- FROM brand_base\n",
"\n",
"UNION ALL\n",
"-- UNION ALL\n",
"\n",
"-- ════════════════════════════════════════════════════════════\n",
"-- KPI 3Top1 品牌销售额top1_brand_val— 字符串型,无同比\n",
"-- ════════════════════════════════════════════════════════════\n",
"SELECT\n",
" CORP_COD,\n",
" '' AS ytd,\n",
" ytd AS ytd_src,\n",
" platform,\n",
" store_type,\n",
" 'ROC' AS geo_key,\n",
" 'top1_brand_val' AS KPI_name,\n",
" '' AS Kpi_val, '' AS Kpi_val_ly,\n",
" top1_brand_val AS str_kpi_val,\n",
" '' AS str_kpi_val_ly,\n",
" '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
" total_flag,\n",
" '' AS ta\n",
"FROM brand_base\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- -- KPI 3Top1 品牌销售额top1_brand_val— 字符串型,无同比\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- SELECT\n",
"-- CORP_COD,\n",
"-- '' AS ytd,\n",
"-- ytd AS ytd_src,\n",
"-- platform,\n",
"-- store_type,\n",
"-- 'ROC' AS geo_key,\n",
"-- 'top1_brand_val' AS KPI_name,\n",
"-- '' AS Kpi_val, '' AS Kpi_val_ly,\n",
"-- top1_brand_val AS str_kpi_val,\n",
"-- '' AS str_kpi_val_ly,\n",
"-- '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
"-- total_flag,\n",
"-- '' AS ta\n",
"-- FROM brand_base\n",
"\n",
"UNION ALL\n",
"-- UNION ALL\n",
"\n",
"-- ════════════════════════════════════════════════════════════\n",
"-- KPI 4增量贡献品牌销售额incremental_brand— 字符串型,无同比\n",
"-- ════════════════════════════════════════════════════════════\n",
"SELECT\n",
" CORP_COD,\n",
" '' AS ytd,\n",
" ytd AS ytd_src,\n",
" platform,\n",
" store_type,\n",
" 'ROC' AS geo_key,\n",
" 'incremental_brand' AS KPI_name,\n",
" '' AS Kpi_val, '' AS Kpi_val_ly,\n",
" growth_driver_brand_val AS str_kpi_val,\n",
" '' AS str_kpi_val_ly,\n",
" '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
" total_flag,\n",
" '' AS ta\n",
"FROM brand_base\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- -- KPI 4增量贡献品牌销售额incremental_brand— 字符串型,无同比\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- SELECT\n",
"-- CORP_COD,\n",
"-- '' AS ytd,\n",
"-- ytd AS ytd_src,\n",
"-- platform,\n",
"-- store_type,\n",
"-- 'ROC' AS geo_key,\n",
"-- 'incremental_brand' AS KPI_name,\n",
"-- '' AS Kpi_val, '' AS Kpi_val_ly,\n",
"-- growth_driver_brand_val AS str_kpi_val,\n",
"-- '' AS str_kpi_val_ly,\n",
"-- '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
"-- total_flag,\n",
"-- '' AS ta\n",
"-- FROM brand_base\n",
"\n",
"UNION ALL\n",
"-- UNION ALL\n",
"\n",
"-- ════════════════════════════════════════════════════════════\n",
"-- KPI 5增量贡献品牌增长率incremental_brand_gr— 数值型\n",
"-- ════════════════════════════════════════════════════════════\n",
"SELECT\n",
" CORP_COD,\n",
" '' AS ytd,\n",
" ytd AS ytd_src,\n",
" platform,\n",
" store_type,\n",
" 'ROC' AS geo_key,\n",
" 'incremental_brand_gr' AS KPI_name,\n",
" growth_driver_brand_gr AS Kpi_val,\n",
" growth_driver_brand_gr_ly AS Kpi_val_ly,\n",
" '' AS str_kpi_val, '' AS str_kpi_val_ly,\n",
" '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
" total_flag,\n",
" '' AS ta\n",
"FROM brand_base\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- -- KPI 5增量贡献品牌增长率incremental_brand_gr— 数值型\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- SELECT\n",
"-- CORP_COD,\n",
"-- '' AS ytd,\n",
"-- ytd AS ytd_src,\n",
"-- platform,\n",
"-- store_type,\n",
"-- 'ROC' AS geo_key,\n",
"-- 'incremental_brand_gr' AS KPI_name,\n",
"-- growth_driver_brand_gr AS Kpi_val,\n",
"-- growth_driver_brand_gr_ly AS Kpi_val_ly,\n",
"-- '' AS str_kpi_val, '' AS str_kpi_val_ly,\n",
"-- '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
"-- total_flag,\n",
"-- '' AS ta\n",
"-- FROM brand_base\n",
"\n",
"UNION ALL\n",
"-- UNION ALL\n",
"\n",
"-- ════════════════════════════════════════════════════════════\n",
"-- KPI 6企业 TA 销售额top_corp_sales— 数值型\n",
"-- 注意ytd 直接填入 ytd 列ytd_src 留空(与 brand 系列相反)\n",
"-- ════════════════════════════════════════════════════════════\n",
"SELECT\n",
" CORP_COD,\n",
" ytd AS ytd,\n",
" '' AS ytd_src,\n",
" platform,\n",
" store_type,\n",
" 'ROC' AS geo_key,\n",
" 'top_corp_sales' AS KPI_name,\n",
" sales_value AS Kpi_val,\n",
" sales_value_ly AS Kpi_val_ly,\n",
" '' AS str_kpi_val, '' AS str_kpi_val_ly,\n",
" '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
" total_flag,\n",
" ta\n",
"FROM ta_base\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- -- KPI 6企业 TA 销售额top_corp_sales— 数值型\n",
"-- -- 注意ytd 直接填入 ytd 列ytd_src 留空(与 brand 系列相反)\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- SELECT\n",
"-- CORP_COD,\n",
"-- ytd AS ytd,\n",
"-- '' AS ytd_src,\n",
"-- platform,\n",
"-- store_type,\n",
"-- 'ROC' AS geo_key,\n",
"-- 'top_corp_sales' AS KPI_name,\n",
"-- sales_value AS Kpi_val,\n",
"-- sales_value_ly AS Kpi_val_ly,\n",
"-- '' AS str_kpi_val, '' AS str_kpi_val_ly,\n",
"-- '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
"-- total_flag,\n",
"-- ta\n",
"-- FROM ta_base \n",
"-- -- left join ta_base c \n",
"-- -- on a.ytd = c.ytd + 100\n",
"-- -- and a.corp_des = c.corp_des \n",
"-- -- and a.platform = c.platform\n",
"-- -- and a.store_type = c.store_type\n",
"-- -- and a.ta = c.ta\n",
"\n",
"UNION ALL\n",
"-- UNION ALL\n",
"\n",
"-- ════════════════════════════════════════════════════════════\n",
"-- KPI 7企业 TA 排名top_rank— 字符串型,无同比\n",
"-- DISTINCT 去重,避免多条重复排名行\n",
"-- ════════════════════════════════════════════════════════════\n",
"SELECT DISTINCT\n",
" CORP_COD,\n",
" '' AS ytd,\n",
" ytd AS ytd_src,\n",
" platform,\n",
" store_type,\n",
" 'ROC' AS geo_key,\n",
" 'top_rank' AS KPI_name,\n",
" rank AS Kpi_val,\n",
" '' AS Kpi_val_ly,\n",
" '' AS str_kpi_val, '' AS str_kpi_val_ly,\n",
" '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
" total_flag,\n",
" ta\n",
"FROM ta_base;"
"-- -- ════════════════════════════════════════════════════════════\n",
"-- -- KPI 7企业 TA 排名top_rank— 字符串型,无同比\n",
"-- -- DISTINCT 去重,避免多条重复排名行\n",
"-- -- ════════════════════════════════════════════════════════════\n",
"-- SELECT DISTINCT\n",
"-- CORP_COD,\n",
"-- '' AS ytd,\n",
"-- ytd AS ytd_src,\n",
"-- platform,\n",
"-- store_type,\n",
"-- 'ROC' AS geo_key,\n",
"-- 'top_rank' AS KPI_name,\n",
"-- rank AS Kpi_val,\n",
"-- '' AS Kpi_val_ly,\n",
"-- '' AS str_kpi_val, '' AS str_kpi_val_ly,\n",
"-- '' AS str_kpi_vol, '' AS str_kpi_vol_ly,\n",
"-- total_flag,\n",
"-- ta\n",
"-- FROM ta_base;"
]
},
{
@@ -2076,10 +2084,204 @@
"byteLimit": 2048000,
"rowLimit": 10000
},
"finishTime": 1777652451150,
"inputWidgets": {},
"nuid": "9e6100db-d97c-41a6-8b30-4f7a774c1903",
"showTitle": false,
"startTime": 1777652447065,
"submitTime": 1777652446859,
"tableResultSettingsMap": {},
"title": ""
}
},
"outputs": [],
"source": [
"---------------------------------------将直取部分数据处理成KPI形式-----------------------------------------\n",
"insert overwrite table tmp.tmp_zk_ec_sales_kpi_tmp \n",
"select\n",
" b.CORP_COD,\n",
" '' as yyyymm,\n",
" a.ytd ,\n",
" a.platform,\n",
" case when a.store_type = '三方' then '第三方' else a.store_type end store_type ,\n",
" 'ROC' as geo_key,\n",
"'top_yoygr' as KPI_name,\n",
"a.yoy_gr as Kpi_val,\n",
"c.yoy_gr as Kpi_val_ly,\n",
"'' as str_kpi_val,\n",
"'' as str_kpi_val_ly,\n",
"'' as str_kpi_vol,\n",
"'' as str_kpi_vol_ly,\n",
"case when upper(a.rank) = 'TTL MKT' then 'Y' else 'N' end total_flag,\n",
"'' as ta\n",
"from dwd.dwd_gnd_ec_b2c_top10_drives_brand a \n",
"left join (select distinct ZK_Corp_C,CORP_COD from dwd.dwd_inc_gnd_retail_b2c_label_total where (ZK_Corp_C = '东阳光' and ZK_Prod_C is null) or ZK_Corp_C != '东阳光') b \n",
"on a.corp = b.ZK_Corp_C\n",
"left join dwd.dwd_gnd_ec_b2c_top10_drives_brand c \n",
"on a.corp = c.corp \n",
"and a.ytd = c.ytd + 100\n",
"and a.platform = c.platform\n",
"and a.store_type = c.store_type\n",
"-- where upper(a.rank) <> 'TTL MKT' \n",
"union all\n",
"select\n",
" b.CORP_COD,\n",
" '' as yyyymm,\n",
" a.ytd ,\n",
" a.platform,\n",
" case when a.store_type = '三方' then '第三方' else a.store_type end store_type ,\n",
" 'ROC' as geo_key,\n",
"'top1_brand_gr' as KPI_name,\n",
"a.top1_brand_gr as Kpi_val,\n",
"c.top1_brand_gr as Kpi_val_ly,\n",
"'' as str_kpi_val,\n",
"'' as str_kpi_val_ly,\n",
"'' as str_kpi_vol,\n",
"'' as str_kpi_vol_ly,\n",
"case when upper(a.rank) = 'TTL MKT' then 'Y' else 'N' end total_flag,\n",
"'' as ta\n",
"from dwd.dwd_gnd_ec_b2c_top10_drives_brand a \n",
"left join (select distinct ZK_Corp_C,CORP_COD from dwd.dwd_inc_gnd_retail_b2c_label_total where (ZK_Corp_C = '东阳光' and ZK_Prod_C is null) or ZK_Corp_C != '东阳光') b \n",
"on a.corp = b.ZK_Corp_C\n",
"left join dwd.dwd_gnd_ec_b2c_top10_drives_brand c \n",
"on a.corp = c.corp \n",
"and a.ytd = c.ytd + 100\n",
"and a.platform = c.platform\n",
"and a.store_type = c.store_type\n",
"-- where upper(a.rank) <> 'TTL MKT' \n",
"union all\n",
"select\n",
" b.CORP_COD,\n",
" '' as yyyymm,\n",
" a.ytd ,\n",
" a.platform,\n",
" case when a.store_type = '三方' then '第三方' else a.store_type end store_type,\n",
" 'ROC' as geo_key,\n",
"'top1_brand_val' as KPI_name,\n",
"'' as Kpi_val,\n",
"'' as Kpi_val_ly,\n",
"a.top1_brand_val as str_kpi_val,\n",
"'' as str_kpi_val_ly,\n",
"'' as str_kpi_vol,\n",
"'' as str_kpi_vol_ly,\n",
"case when upper(a.rank) = 'TTL MKT' then 'Y' else 'N' end total_flag,\n",
"'' as ta\n",
"from dwd.dwd_gnd_ec_b2c_top10_drives_brand a \n",
"left join (select distinct ZK_Corp_C,CORP_COD from dwd.dwd_inc_gnd_retail_b2c_label_total where (ZK_Corp_C = '东阳光' and ZK_Prod_C is null) or ZK_Corp_C != '东阳光') b \n",
"on a.corp = b.ZK_Corp_C\n",
"-- where upper(a.rank) <> 'TTL MKT' \n",
"union all \n",
"select \n",
" b.CORP_COD,\n",
" '' as yyyymm,\n",
" a.ytd ,\n",
" a.platform,\n",
" case when a.store_type = '三方' then '第三方' else a.store_type end store_type,\n",
" 'ROC' as geo_key,\n",
" 'incremental_brand' as KPI_name,\n",
" '' as Kpi_val,\n",
" '' as Kpi_val_ly,\n",
" a.growth_driver_brand_val as str_kpi_val,\n",
" '' as str_kpi_val_ly,\n",
" '' as str_kpi_vol,\n",
" '' as str_kpi_vol_ly,\n",
" case when upper(a.rank) = 'TTL MKT' then 'Y' else 'N' end total_flag,\n",
" '' as ta\n",
"from dwd.dwd_gnd_ec_b2c_top10_drives_brand a \n",
"left join (select distinct ZK_Corp_C,CORP_COD from dwd.dwd_inc_gnd_retail_b2c_label_total where (ZK_Corp_C = '东阳光' and ZK_Prod_C is null) or ZK_Corp_C != '东阳光') b \n",
"on a.corp = b.ZK_Corp_C\n",
"-- where upper(a.rank) <> 'TTL MKT' \n",
"union all\n",
"select \n",
" b.CORP_COD,\n",
" '' as yyyymm,\n",
" a.ytd ,\n",
" a.platform,\n",
" case when a.store_type = '三方' then '第三方' else a.store_type end store_type,\n",
" 'ROC' as geo_key,\n",
" 'incremental_brand_gr' as KPI_name,\n",
" a.growth_driver_brand_gr as Kpi_val,\n",
" c.growth_driver_brand_gr as Kpi_val_ly,\n",
" '' as str_kpi_val,\n",
" '' as str_kpi_val_ly,\n",
" '' as str_kpi_vol,\n",
" '' as str_kpi_vol_ly,\n",
" case when upper(a.rank) = 'TTL MKT' then 'Y' else 'N' end total_flag,\n",
" '' as ta\n",
"from dwd.dwd_gnd_ec_b2c_top10_drives_brand a \n",
"left join (select distinct ZK_Corp_C,CORP_COD from dwd.dwd_inc_gnd_retail_b2c_label_total where (ZK_Corp_C = '东阳光' and ZK_Prod_C is null) or ZK_Corp_C != '东阳光') b \n",
"on a.corp = b.ZK_Corp_C\n",
"left join dwd.dwd_gnd_ec_b2c_top10_drives_brand c \n",
"on a.corp = c.corp \n",
"and a.ytd = c.ytd + 100\n",
"and a.platform = c.platform\n",
"and a.store_type = c.store_type\n",
"-- where upper(a.rank) <> 'TTL MKT' \n",
"union all \n",
"select\n",
" b.CORP_COD,\n",
" a.ytd yyyymm,\n",
" '' as ytd,\n",
" a.platform,\n",
" a.store_type,\n",
" 'ROC' as geo_key,\n",
" 'top_corp_sales' as KPI_name,\n",
" replace(a.sales_value,',','' ) as Kpi_val,\n",
" replace(c.sales_value,',','' ) as Kpi_val_ly,\n",
" '' as str_kpi_val,\n",
" '' as str_kpi_val_ly,\n",
" '' as str_kpi_vol,\n",
" '' as str_kpi_vol_ly,\n",
" case when lower(a.rank) = 'total' then 'Y' else 'N' end total_flag,\n",
" a.ta\n",
"from dwd.dwd_gnd_ec_ta_overview a \n",
"left join (select distinct ZK_Corp_C,CORP_COD from dwd.dwd_inc_gnd_retail_b2c_label_total where (ZK_Corp_C = '东阳光' and ZK_Prod_C is null) or ZK_Corp_C != '东阳光') b \n",
"on a.corp_des = b.ZK_Corp_C\n",
"left join dwd.dwd_gnd_ec_ta_overview c \n",
"on a.ytd = c.ytd + 100\n",
"and a.corp_des = c.corp_des \n",
"and a.platform = c.platform\n",
"and a.store_type = c.store_type\n",
"and a.ta = c.ta\n",
"-- where lower(a.rank) <> 'total'\n",
"union all \n",
"select distinct\n",
" b.CORP_COD,\n",
" '' yyyymm,\n",
" a.ytd as ytd,\n",
" a.platform,\n",
" a.store_type,\n",
" 'ROC' as geo_key,\n",
" 'top_rank' as KPI_name,\n",
" a.rank as Kpi_val,\n",
" '' as Kpi_val_ly,\n",
" '' as str_kpi_val,\n",
" '' as str_kpi_val_ly,\n",
" '' as str_kpi_vol,\n",
" '' as str_kpi_vol_ly,\n",
" case when lower(a.rank) = 'total' then 'Y' else 'N' end total_flag,\n",
" a.ta\n",
"from dwd.dwd_gnd_ec_ta_overview a \n",
"left join (select distinct ZK_Corp_C,CORP_COD from dwd.dwd_inc_gnd_retail_b2c_label_total where (ZK_Corp_C = '东阳光' and ZK_Prod_C is null) or ZK_Corp_C != '东阳光') b \n",
"on a.corp_des = b.ZK_Corp_C\n",
"-- where lower(a.rank) <> 'total'\n"
]
},
{
"cell_type": "code",
"execution_count": 0,
"metadata": {
"application/vnd.databricks.v1+cell": {
"cellMetadata": {
"byteLimit": 2048000,
"rowLimit": 10000
},
"finishTime": 1777652456889,
"inputWidgets": {},
"nuid": "0c0fe2ec-f80e-4872-85bf-fd5d058cc8b8",
"showTitle": false,
"submitTime": 1777537485097,
"startTime": 1777652453844,
"submitTime": 1777652453744,
"tableResultSettingsMap": {},
"title": ""
}