county事实表修改
去年数据需要聚合防止多行陪陪出问题
This commit is contained in:
@@ -151,39 +151,6 @@ and province_name not in ('台湾','澳门','香港')
|
|||||||
|
|
||||||
-- COMMAND ----------
|
-- COMMAND ----------
|
||||||
|
|
||||||
|
|
||||||
WITH original_sales AS (
|
|
||||||
SELECT /*+ BROADCAST(T2,T3) */
|
|
||||||
T1.YM AS YYYYMM,
|
|
||||||
T2.PROVINCE_CODE AS AUDIT_COD,
|
|
||||||
T3.IQVIA_PACK_CODE AS PACK_CODE,
|
|
||||||
T1.VALUE AS SALES_VALUE,
|
|
||||||
T1.TOTALUNIT AS SALES_UNIT,
|
|
||||||
T1.COUNTINGUNIT AS COUNTINGUNIT
|
|
||||||
FROM FACT_COUNTY_PREVIOUS AS T1
|
|
||||||
LEFT JOIN DIM_PROVINCE AS T2 ON T1.PROVINCE_C = T2.PROVINCE_NAME
|
|
||||||
LEFT JOIN DIM_PACK_INFO AS T3 ON T1.PHCD = T3.PACK_COD
|
|
||||||
)
|
|
||||||
|
|
||||||
SELECT
|
|
||||||
cy.YYYYMM,
|
|
||||||
cy.AUDIT_COD,
|
|
||||||
cy.PACK_CODE,
|
|
||||||
cy.SALES_VALUE,
|
|
||||||
cy.SALES_UNIT,
|
|
||||||
cy.COUNTINGUNIT,
|
|
||||||
-- 去年同期:YYYYMM 为 6 位整数,减 100 即同月上一年(如 202403 → 202303)
|
|
||||||
ly.SALES_VALUE AS SALES_VALUE_LY,
|
|
||||||
ly.SALES_UNIT AS SALES_UNIT_LY,
|
|
||||||
ly.COUNTINGUNIT AS COUNTINGUNIT_LY
|
|
||||||
FROM original_sales AS cy
|
|
||||||
LEFT JOIN original_sales AS ly
|
|
||||||
ON ly.YYYYMM = cy.YYYYMM - 100 -- 同月去年
|
|
||||||
AND ly.AUDIT_COD = cy.AUDIT_COD
|
|
||||||
AND ly.PACK_CODE = cy.PACK_CODE
|
|
||||||
|
|
||||||
-- COMMAND ----------
|
|
||||||
|
|
||||||
INSERT OVERWRITE TABLE DM.DM_TF_EXT_COUNTY_SALES (
|
INSERT OVERWRITE TABLE DM.DM_TF_EXT_COUNTY_SALES (
|
||||||
YYYYMM,
|
YYYYMM,
|
||||||
PACK_CODE,
|
PACK_CODE,
|
||||||
@@ -227,15 +194,16 @@ WITH original_sales AS (
|
|||||||
T1.YM AS YYYYMM,
|
T1.YM AS YYYYMM,
|
||||||
T2.PROVINCE_CODE AS AUDIT_COD,
|
T2.PROVINCE_CODE AS AUDIT_COD,
|
||||||
T3.IQVIA_PACK_CODE AS PACK_COD,
|
T3.IQVIA_PACK_CODE AS PACK_COD,
|
||||||
T1.VALUE AS SALES_VALUE_CAL,
|
SUM(T1.VALUE ) AS SALES_VALUE_CAL,
|
||||||
T1.TOTALUNIT AS SALES_UNIT_CAL,
|
SUM(T1.TOTALUNIT ) AS SALES_UNIT_CAL,
|
||||||
T1.COUNTINGUNIT AS CONUTING_UNIT
|
SUM(T1.COUNTINGUNIT ) AS CONUTING_UNIT
|
||||||
FROM FACT_COUNTY_PREVIOUS AS T1
|
FROM FACT_COUNTY_PREVIOUS AS T1
|
||||||
LEFT JOIN DIM_PROVINCE AS T2 ON T1.PROVINCE_C = T2.PROVINCE_NAME
|
LEFT JOIN DIM_PROVINCE AS T2 ON T1.PROVINCE_C = T2.PROVINCE_NAME
|
||||||
LEFT JOIN DIM_PACK_INFO AS T3 ON T1.PHCD = T3.PACK_COD
|
LEFT JOIN DIM_PACK_INFO AS T3 ON T1.PHCD = T3.PACK_COD
|
||||||
|
GROUP BY T1.YM,T2.PROVINCE_CODE,T3.IQVIA_PACK_CODE
|
||||||
)
|
)
|
||||||
|
|
||||||
,formated_count_sales_table (
|
,formated_count_sales_table_detail (
|
||||||
SELECT
|
SELECT
|
||||||
cy.YYYYMM,
|
cy.YYYYMM,
|
||||||
cy.AUDIT_COD,
|
cy.AUDIT_COD,
|
||||||
@@ -243,15 +211,41 @@ WITH original_sales AS (
|
|||||||
cy.SALES_VALUE_CAL,
|
cy.SALES_VALUE_CAL,
|
||||||
cy.SALES_UNIT_CAL,
|
cy.SALES_UNIT_CAL,
|
||||||
cy.CONUTING_UNIT,
|
cy.CONUTING_UNIT,
|
||||||
-- 去年同期:YYYYMM 为 6 位整数,减 100 即同月上一年(如 202403 → 202303)
|
0 AS SALES_VALUE_CAL_LY,
|
||||||
|
0 AS SALES_UNIT_CAL_LY,
|
||||||
|
0 AS CONUTING_UNIT_LY
|
||||||
|
FROM original_sales AS cy
|
||||||
|
|
||||||
|
union ALL
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
ly.YYYYMM+100 as YYYYMM,
|
||||||
|
ly.AUDIT_COD,
|
||||||
|
ly.PACK_COD,
|
||||||
|
0 as SALES_VALUE_CAL,
|
||||||
|
0 as SALES_UNIT_CAL,
|
||||||
|
0 as CONUTING_UNIT,
|
||||||
|
-- 去年同期
|
||||||
ly.SALES_VALUE_CAL AS SALES_VALUE_CAL_LY,
|
ly.SALES_VALUE_CAL AS SALES_VALUE_CAL_LY,
|
||||||
ly.SALES_UNIT_CAL AS SALES_UNIT_CAL_LY,
|
ly.SALES_UNIT_CAL AS SALES_UNIT_CAL_LY,
|
||||||
ly.CONUTING_UNIT AS CONUTING_UNIT_LY
|
ly.CONUTING_UNIT AS CONUTING_UNIT_LY
|
||||||
FROM original_sales AS cy
|
FROM original_sales AS ly
|
||||||
LEFT JOIN original_sales AS ly
|
WHERE ly.yyyymm+100 <= (select max( yyyymm ) from original_sales )
|
||||||
ON ly.YYYYMM = cy.YYYYMM - 100 -- 同月去年
|
)
|
||||||
AND ly.AUDIT_COD = cy.AUDIT_COD
|
|
||||||
AND ly.PACK_COD = cy.PACK_COD
|
,formated_count_sales_table (
|
||||||
|
SELECT
|
||||||
|
YYYYMM,
|
||||||
|
AUDIT_COD,
|
||||||
|
PACK_COD,
|
||||||
|
SUM(SALES_VALUE_CAL) AS SALES_VALUE_CAL,
|
||||||
|
SUM(SALES_UNIT_CAL) AS SALES_UNIT_CAL,
|
||||||
|
SUM(CONUTING_UNIT) AS CONUTING_UNIT,
|
||||||
|
SUM(SALES_VALUE_CAL_LY) AS SALES_VALUE_CAL_LY,
|
||||||
|
SUM(SALES_UNIT_CAL_LY) AS SALES_UNIT_CAL_LY,
|
||||||
|
SUM(CONUTING_UNIT_LY) AS CONUTING_UNIT_LY
|
||||||
|
FROM formated_count_sales_table_detail
|
||||||
|
GROUP BY 1,2,3
|
||||||
)
|
)
|
||||||
|
|
||||||
-- ════════════════════════════════════════════
|
-- ════════════════════════════════════════════
|
||||||
|
|||||||
Reference in New Issue
Block a user