Files
MarketAnalysis-ETL/EXTERNAL/CHPA/01 dwd_ims_td_pack_property.sql
2026-04-20 14:55:25 +08:00

89 lines
3.8 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- Databricks notebook source
-------使用新的DIM表生成PackProfile保证后续的逻辑
-- 20260119 依赖前面 dwd.dwd_ims_nfc_hierarchy、dwd.dwd_ims_atc_hierarchy、dwd.dwd_ims_td_manufacturer_corp
-- 20260119 依赖上面补0 dwd.dwd_gnd_ims_tblbrandtype
insert overwrite table dwd.dwd_ims_td_pack_property
select DISTINCT
if( PACK.Pack_Code REGEXP '^[0-9]',right(concat('000000000000',PACK.Pack_Code),12),PACK.Pack_Code) as PACK_COD, --RIGHT(concat('0000000',PACK.Pack_Code),7)
PACK.Pack_Description AS PACK_DES,
PACK.STRENGTH AS STGH_DES,
concat('Y',LEFT(PACK.LAUNCHTIME,4),'M',RIGHT(PACK.LAUNCHTIME,2)) AS PACK_LCH,
RIGHT(concat('000000000',PROD.Product_Code),9) AS PROD_COD, --RIGHT(concat('00000',PROD.Product_Code),5)
RIGHT(concat('000000',MOLE.MoleCompCode),6) AS CMPS_COD,
MOLE.MoleCompDesc AS CMPS_DES,
ATCH.ATC1_CODE AS ATC1_COD,
ATCH.ATC2_CODE AS ATC2_COD,
ATCH.ATC3_CODE AS ATC3_COD,
ATCH.ATC4_CODE AS ATC4_COD,
NFCH.NFC1_CODE AS APP1_COD,
NFCH.NFC2_CODE AS APP2_COD,
NFCH.NFC3_CODE AS APP3_COD,
MOLE.BIO AS BIO_DESC,
MOLE.Gene_Orig AS GENE_ORIG_DESC,
MOLE.Rx_Flag AS ETH_OTC_DESC,
MOLE.NRDL AS NRDL_DESC,
MOLE.NRDL_Entry_Date,
MOLE.EDL AS EDL_DESC,
MOLE.TCMEX AS TCM_DESC,
MOLE.PAED AS PAED_DESC,
MOLE.GQCE AS GQCE_DESC,
MOLE.VBP AS VBP_DESC,
MANU.Manufacturer_Abbr AS MANU_COD,
MANU.Manufacturer_Name AS MANU_DES,
MANUT.ManufacturerType_CODE AS MNFL_COD,
MANUT.ManufacturerType_Name AS MNFL_DES,
MANU.CORP_ABBR AS CORP_COD,
MANU.CORP_DES AS CORP_DES,
BRANDTYPE.Brand_Type AS BrandType
from dwd.dwd_ims_td_pack PACK
LEFT JOIN dwd.dwd_ims_td_product PROD ON PACK.Product_ID = PROD.Product_ID
LEFT JOIN dwd.dwd_ims_td_new_form_class NFC ON PACK.NewFormClass_ID = NFC.NewFormClass_ID
LEFT JOIN dwd.dwd_ims_nfc_hierarchy NFCH ON NFC.NewFormClass_Code = NFCH.NFC3_CODE
LEFT JOIN dwd.dwd_ims_td_therapeutic_class ATC ON PACK.Therapeutic_ID = ATC.Therapeutic_ID
LEFT JOIN dwd.dwd_ims_atc_hierarchy ATCH ON ATC.Therapeutic_Code = ATCH.ATC4_CODE
LEFT JOIN dwd.dwd_ims_td_pack_additional_attribute MOLE ON PACK.Pack_ID = MOLE.Pack_ID
LEFT JOIN dwd.dwd_ims_td_manufacturer_corp MANU ON PROD.Manufacturer_ID = MANU.Manufacturer_ID
LEFT JOIN dwd.dwd_ims_td_manufacturertype MANUT ON MANU.ManufacturerType_ID = MANUT.ManufacturerType_ID
LEFT JOIN dwd.dwd_gnd_ims_tblbrandtype BRANDTYPE ON PACK.Pack_Code = BRANDTYPE.PACK_COD
;
update dwd.dwd_ims_td_pack_property set CORP_COD ='' where CORP_COD is null ;
update dwd.dwd_ims_td_pack_property set STGH_DES ='' where STGH_DES is null ;
-- COMMAND ----------
-- 20260119 修改 dwd.dwd_ims_td_pack_property 我感觉可以拉到前面去
-- 要调研下,为什么前面没有写,而在后面写。
--Update AZ BRANDS SCOPE---MANU的页面显示
---by Product&Pack add in 'Fluimucil, Broncho-vaxom, Ai Rui Zhuo', by AC 202103
update dwd.dwd_ims_td_pack_property
set CORP_COD = 'A5Z', CORP_DES = 'ASTRAZENECA GROUP'
where PROD_COD in(
select
right(concat('0000000000',PROD_COD),9) as PROD_COD --right(concat('000000',PROD_COD),5)
from dwd.dwd_gnd_tbl_corp_change where corp_cod='A5Z')
or PACK_COD in(
select
if( PACK_COD REGEXP '^[0-9]',right(concat('000000000000',PACK_COD),12),PACK_COD) as PACK_COD --right(concat('000000',PACK_COD),7)
from dwd.dwd_gnd_tbl_corp_change where corp_cod='A5Z')
-- where PROD_COD in ('97336','73148') OR PACK_COD = '0795918'
;
---by Product&Pack remove out tblAZScope.xlsx', by AC 202103
update dwd.dwd_ims_td_pack_property
set CORP_COD = 'A5ZD', CORP_DES = 'AZDealed',MANU_COD = 'A5ZD' ,MANU_DES = 'AZDealed'
where PROD_COD in(
select
right(concat('0000000000',PROD_COD),9) as PROD_COD
from dwd.dwd_gnd_tbl_corp_change where corp_cod='A5ZD')
or PACK_COD in(
select
if( PACK_COD REGEXP '^[0-9]',right(concat('000000000000',PACK_COD),12),PACK_COD) as PACK_COD
from dwd.dwd_gnd_tbl_corp_change where corp_cod='A5ZD')
-- where PROD_COD in ('02267','14691','58423','12754','06482','97266','14164')
;