haoyi修改

This commit is contained in:
2026-04-28 09:22:48 +00:00
parent 3b08537f5e
commit 54ba912b2a
6 changed files with 688 additions and 125 deletions

View File

@@ -97,81 +97,86 @@ brand_result.write.mode("overwrite").saveAsTable("dwd.dwd_inc_gnd_ext_retail_nat
# COMMAND ----------
# MAGIC %sql
# MAGIC /*
# MAGIC 修改时间20250311
# MAGIC 修改人chenwu
# MAGIC 修改内容brand来数频率为 季度来数, 但是 pack 为 月度来数据,需要用季度的数据/3得到月度的
# MAGIC */
# MAGIC insert overwrite table dwd.dwd_inc_gnd_ext_retail_nataional_brand_union_all
# MAGIC with quarterly_table as (
# MAGIC select
# MAGIC *
# MAGIC from dwd.dwd_inc_gnd_ext_retail_nataional_brand_union_all
# MAGIC where market not in ('NIAD','Inhaled Extended Market','布地奈德雾化溶液')
# MAGIC -- 范围内只能是 季度来数据的,如果有月度来数据的需要排除掉
# MAGIC )
# MAGIC
# MAGIC ,month_table as (--转化成月度数据
# MAGIC SELECT
# MAGIC SUBSTR(q.yq, 1, 4)*100 + -- 提取年份
# MAGIC LPAD(m.month_num, 2, '0') -- 补零月份
# MAGIC AS YYYYMM -- 月份首日
# MAGIC ,`year`
# MAGIC ,`quarter`
# MAGIC ,yq
# MAGIC ,brand_cat_type
# MAGIC ,TA
# MAGIC ,market
# MAGIC ,zk_brand_category
# MAGIC ,zk_common_name
# MAGIC ,zk_manu_des
# MAGIC ,rc_name_en
# MAGIC ,province_city
# MAGIC ,ytd
# MAGIC ,sales_val /3 --除3
# MAGIC ,sales_vol /3 --除3
# MAGIC ,price
# MAGIC ,num_dist_rate
# MAGIC ,weig_dist_rate
# MAGIC ,val_share
# MAGIC ,vol_share
# MAGIC ,key_brand_ytd
# MAGIC ,key_brand_rank_ytd
# MAGIC ,top_brand_ytd
# MAGIC ,top_brand_ms_ytd
# MAGIC ,top_brand_inc_ms_ytd
# MAGIC ,top_brand_gr_ytd
# MAGIC ,key_brand_qtd
# MAGIC ,key_brand_rank_qtd
# MAGIC ,top_brand_qtd
# MAGIC ,top_brand_ms_qtd
# MAGIC ,top_brand_inc_ms_qtd
# MAGIC ,top_brand_gr_qtd
# MAGIC ,ranked_by
# MAGIC ,pack_flag
# MAGIC ,etl_insert_dt
# MAGIC ,etl_update_dt
# MAGIC FROM
# MAGIC quarterly_table q
# MAGIC LATERAL VIEW EXPLODE( -- 为每季度生成三个月
# MAGIC CASE
# MAGIC WHEN RIGHT(q.yq, 2) = 'Q1' THEN ARRAY(1, 2, 3)
# MAGIC WHEN RIGHT(q.yq, 2) = 'Q2' THEN ARRAY(4, 5, 6)
# MAGIC WHEN RIGHT(q.yq, 2) = 'Q3' THEN ARRAY(7, 8, 9)
# MAGIC WHEN RIGHT(q.yq, 2) = 'Q4' THEN ARRAY(10, 11, 12)
# MAGIC END
# MAGIC ) m AS month_num
# MAGIC )
# MAGIC
# MAGIC ,other_not_quarterly_table (
# MAGIC select
# MAGIC *
# MAGIC from dwd.dwd_inc_gnd_ext_retail_nataional_brand_union_all
# MAGIC where market in ('NIAD','Inhaled Extended Market','布地奈德雾化溶液')
# MAGIC -- 范围内只能是 月度来数据的
# MAGIC )
# MAGIC
# MAGIC select * from month_table
# MAGIC union all
# MAGIC select * from other_not_quarterly_table
# %sql
# /*
# 修改时间20250311
# 修改人chenwu
# 修改内容brand来数频率为 季度来数, 但是 pack 为 月度来数据,需要用季度的数据/3得到月度的
# 修改时间20260428
# 修改人zhanghaoyi
# 修改内容:上游汇总为季度数据, 无需拆分
# */
# insert overwrite table dwd.dwd_inc_gnd_ext_retail_nataional_brand_union_all
# with quarterly_table as (
# select
# *
# from dwd.dwd_inc_gnd_ext_retail_nataional_brand_union_all
# where market not in ('NIAD','Inhaled Extended Market','布地奈德雾化溶液')
# -- 范围内只能是 季度来数据的,如果有月度来数据的需要排除掉
# )
# ,month_table as (--转化成月度数据
# SELECT
# SUBSTR(q.yq, 1, 4)*100 + -- 提取年份
# LPAD(m.month_num, 2, '0') -- 补零月份
# AS YYYYMM -- 月份首日
# ,`year`
# ,`quarter`
# ,yq
# ,brand_cat_type
# ,TA
# ,market
# ,zk_brand_category
# ,zk_common_name
# ,zk_manu_des
# ,rc_name_en
# ,province_city
# ,ytd
# ,sales_val /3 --除3
# ,sales_vol /3 --除3
# ,price
# ,num_dist_rate
# ,weig_dist_rate
# ,val_share
# ,vol_share
# ,key_brand_ytd
# ,key_brand_rank_ytd
# ,top_brand_ytd
# ,top_brand_ms_ytd
# ,top_brand_inc_ms_ytd
# ,top_brand_gr_ytd
# ,key_brand_qtd
# ,key_brand_rank_qtd
# ,top_brand_qtd
# ,top_brand_ms_qtd
# ,top_brand_inc_ms_qtd
# ,top_brand_gr_qtd
# ,ranked_by
# ,pack_flag
# ,etl_insert_dt
# ,etl_update_dt
# FROM
# quarterly_table q
# LATERAL VIEW EXPLODE( -- 为每季度生成三个月
# CASE
# WHEN RIGHT(q.yq, 2) = 'Q1' THEN ARRAY(1, 2, 3)
# WHEN RIGHT(q.yq, 2) = 'Q2' THEN ARRAY(4, 5, 6)
# WHEN RIGHT(q.yq, 2) = 'Q3' THEN ARRAY(7, 8, 9)
# WHEN RIGHT(q.yq, 2) = 'Q4' THEN ARRAY(10, 11, 12)
# END
# ) m AS month_num
# )
# ,other_not_quarterly_table (
# select
# *
# from dwd.dwd_inc_gnd_ext_retail_nataional_brand_union_all
# where market in ('NIAD','Inhaled Extended Market','布地奈德雾化溶液')
# -- 范围内只能是 月度来数据的
# )
# select * from month_table
# union all
# select * from other_not_quarterly_table