From 38e481ebf762118ea4eb03409a0995753dac281d Mon Sep 17 00:00:00 2001 From: root Date: Thu, 22 Feb 2024 10:51:06 +0800 Subject: [PATCH] =?UTF-8?q?add=20workflow=20=E6=B3=B0=E5=85=8BCRM,dev?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tk_crm/CRM联系方式/t01_crm_contact.sql | 134 ++++ .../CRM联系方式/t01_crm_contact_agi.sql | 690 ++++++++++++++++++ 2 files changed, 824 insertions(+) create mode 100644 TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact.sql create mode 100644 TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact_agi.sql diff --git a/TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact.sql b/TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact.sql new file mode 100644 index 0000000..4adf056 --- /dev/null +++ b/TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact.sql @@ -0,0 +1,134 @@ + +DROP TABLE IF EXISTS p20_pdm.t01_crm_contact; +CREATE TABLE IF NOT EXISTS p20_pdm.t01_crm_contact ( + crm_contact_account varchar(20) + , company_name varchar(50) + , account_name varchar(50) + , owner_id varchar(30) + , first_name varchar(20) + , last_name varchar(20) + , mobile_phone varchar(20) + , telphone varchar(20) + , email varchar(50) + , cust_dept varchar(50) + , cust_title varchar(50) + , job_function varchar(50) + , suffix_info varchar(50) + , address_detail varchar(50) + , city_name varchar(20) + , prov_name varchar(20) + , post_cd varchar(20) + , country_name varchar(20) + , ccp_app varchar(200) + , product_interst varchar(200) + , acq_time timestamp(0) + , active_leads_count int + , app_count int + , ccp_record_count int + , gen_product_interst_count int + , sub_app_count int + , acq_campaign_name varchar(200) + , create_time timestamp(0) + , create_person varchar(50) + , modify_time timestamp(0) + , modify_person varchar(50) + , industry varchar(50) + , sub_industry varchar(50) + , msr_visibility varchar(20) + , privacy_policy_ind varchar(20) + , contact_score int + , contact_stage varchar(50) + , contact_type varchar(20) + , collect_personal_info_ind varchar(20) + , collect_personal_info_time timestamp(0) + , phone_ind varchar(20) + , bulk_postalmail_ind varchar(20) + , fax_ind varchar(20) + , track_ind varchar(20) + , set_up_ind varchar(20) + , bulk_email_ind varchar(20) + , email_permission_time timestamp(0) + , sms_ind varchar(20) + , sms_permission_time timestamp(0) + , telmarker_permission_time timestamp(0) + , industry_or_application_info varchar(20) + , last_activity varchar(20) + , market_ind varchar(20) + , marketing_consent varchar(20) + , marketing_consent_time timestamp(0) + , state varchar(20) + , Etl_Batch_No varchar(50) + , Etl_First_Dt timestamp(0) + , Etl_Job varchar(50) + , Etl_Proc_Dt timestamp(0) + , Etl_Tx_Dt timestamp(0) + , Src_Sysname varchar(50) + , Src_Table varchar(50) + ,primary key( crm_contact_account ) +); + + COMMENT ON COLUMN p20_pdm.t01_crm_contact.crm_contact_account IS 'CRM_CONTACT账号'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.company_name IS '公司名称'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.account_name IS '账号名称'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.owner_id IS '责任人'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.first_name IS '姓'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.last_name IS '名'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.mobile_phone IS '手机号'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.telphone IS '电话号码'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.email IS '电子邮箱'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.cust_dept IS '部门'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.cust_title IS '职位'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.job_function IS '工作领域'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.suffix_info IS '附加信息'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.address_detail IS '详细地址'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.city_name IS '城市'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.prov_name IS '省份'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.post_cd IS '邮编'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.country_name IS '国家'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.ccp_app IS 'CCP应用'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.product_interst IS '产品偏好'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.acq_time IS '购买时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.active_leads_count IS '活动线索数'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.app_count IS '应用数'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.ccp_record_count IS 'CCP记录数'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.gen_product_interst_count IS '通用产品偏好数'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.sub_app_count IS '子应用数'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.acq_campaign_name IS '购买项目名'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.create_time IS '创建时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.create_person IS '创建人'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.modify_time IS '修改时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.modify_person IS '修改人'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.industry IS '行业'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.sub_industry IS '子行业'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.msr_visibility IS 'msr关注度'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.privacy_policy_ind IS '隐私政策同意标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.contact_score IS '联系评分'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.contact_stage IS '联系层次'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.contact_type IS '联系类型'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.collect_personal_info_ind IS '个人信息收集标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.collect_personal_info_time IS '个人信息收集时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.phone_ind IS '电话标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.bulk_postalmail_ind IS '群发邮件标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.fax_ind IS '传真标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.track_ind IS '追踪标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.set_up_ind IS '创建标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.bulk_email_ind IS '群发电子邮件标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.email_permission_time IS '电子邮件权限时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.sms_ind IS '短信标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.sms_permission_time IS '短信权限时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.telmarker_permission_time IS '电话营销权限时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.industry_or_application_info IS '行业或应用标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.last_activity IS '最近活跃'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.market_ind IS '市场营销标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.marketing_consent IS '营销同意书'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.marketing_consent_time IS '营销同意时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.state IS '状态'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Etl_Batch_No IS '作业批次号'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Etl_First_Dt IS '最初入库时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Etl_Job IS '作业名称'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Etl_Proc_Dt IS '本次入库时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Etl_Tx_Dt IS '作业运行时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Src_Sysname IS '来源系统'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Src_Table IS '来源表'; + +COMMENT ON TABLE p20_pdm.t01_crm_contact IS 'CRM联系方式'; \ No newline at end of file diff --git a/TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact_agi.sql b/TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact_agi.sql new file mode 100644 index 0000000..bc850de --- /dev/null +++ b/TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact_agi.sql @@ -0,0 +1,690 @@ +/***************************************************************************************************/ +/*script in Sql, generate by SdmCreateScript 2020(by Qihang Feng, QF255001@TERADATA.COM) */ +/*VERSION 01.10 revised on 2020-08-25 */ +/*Brilliance stems from wisdoms. */ +/*************Head Section**************************************************************************/ +/*Script Use: Periodically load data to :t01_crm_contact(CRM联系方式) */ +/*Create Date:2024-02-22 10:50:40 */ +/*SDM Developed By: dev */ +/*SDM Developed Date: 2024-01-12 */ +/*SDM Checked By: dev */ +/*SDM Checked Date: 2024-02-22 */ +/*Script Developed By: dev */ +/*Script Checked By: dev */ +/*Source table 1: p10_sa.s98_s_crm_contact_part */ +/*Job Type: Inbound transform (Tier 1 to Tier 2) */ +/*Target Table:t01_crm_contact */ +/*ETL Job Name:t01_crm_contact */ +/*ETL Frequency:Daily */ +/*ETL Policy:F2 */ +/********************************************************************************************/ +/*******Main Section**************************************************************************/ +\set ON_ERROR_STOP on +\set AUTOCOMMIT on +\timing on + + + +/*创建临时表加载当前数据 */ +CREATE TEMPORARY TABLE t01_crm_contact_agi_CUR_I + ( LIKE :PDMDB.t01_crm_contact) +ON COMMIT PRESERVE ROWS; + + + +/*创建临时表加载不同数据 */ +CREATE TEMPORARY TABLE t01_crm_contact_agi_INS +( LIKE :PDMDB.t01_crm_contact) +ON COMMIT PRESERVE ROWS; + + +/*****************************************************************************************************/ +/* GROUP 1:Source Table:s98_s_crm_contact_part********************************************************/ +/*****************************************************************************************************/ + +INSERT INTO t01_crm_contact_agi_CUR_I ( + crm_contact_account /*CRM_CONTACT账号*/ + ,company_name /*公司名称*/ + ,account_name /*账号名称*/ + ,owner_id /*责任人*/ + ,first_name /*姓*/ + ,last_name /*名*/ + ,mobile_phone /*手机号*/ + ,telphone /*电话号码*/ + ,email /*电子邮箱*/ + ,cust_dept /*部门*/ + ,cust_title /*职位*/ + ,job_function /*工作领域*/ + ,suffix_info /*附加信息*/ + ,address_detail /*详细地址*/ + ,city_name /*城市*/ + ,prov_name /*省份*/ + ,post_cd /*邮编*/ + ,country_name /*国家*/ + ,ccp_app /*CCP应用*/ + ,product_interst /*产品偏好*/ + ,acq_time /*购买时间*/ + ,active_leads_count /*活动线索数*/ + ,app_count /*应用数*/ + ,ccp_record_count /*CCP记录数*/ + ,gen_product_interst_count /*通用产品偏好数*/ + ,sub_app_count /*子应用数*/ + ,acq_campaign_name /*购买项目名*/ + ,create_time /*创建时间*/ + ,create_person /*创建人*/ + ,modify_time /*修改时间*/ + ,modify_person /*修改人*/ + ,industry /*行业*/ + ,sub_industry /*子行业*/ + ,msr_visibility /*msr关注度*/ + ,privacy_policy_ind /*隐私政策同意标志*/ + ,contact_score /*联系评分*/ + ,contact_stage /*联系层次*/ + ,contact_type /*联系类型*/ + ,collect_personal_info_ind /*个人信息收集标志*/ + ,collect_personal_info_time /*个人信息收集时间*/ + ,phone_ind /*电话标志*/ + ,bulk_postalmail_ind /*群发邮件标志*/ + ,fax_ind /*传真标志*/ + ,track_ind /*追踪标志*/ + ,set_up_ind /*创建标志*/ + ,bulk_email_ind /*群发电子邮件标志*/ + ,email_permission_time /*电子邮件权限时间*/ + ,sms_ind /*短信标志*/ + ,sms_permission_time /*短信权限时间*/ + ,telmarker_permission_time /*电话营销权限时间*/ + ,industry_or_application_info /*行业或应用标志*/ + ,last_activity /*最近活跃*/ + ,market_ind /*市场营销标志*/ + ,marketing_consent /*营销同意书*/ + ,marketing_consent_time /*营销同意时间*/ + ,state /*状态*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + ) +SELECT + COALESCE(TRIM(CAST(p0.tek_contactnumber AS varchar(20))),'') /*crm_contact_account*/ + ,COALESCE(TRIM(CAST(p0.tek_companyname AS varchar(50))),'') /*company_name*/ + ,COALESCE(TRIM(CAST(p0.accountidname AS varchar(50))),'') /*account_name*/ + ,COALESCE(TRIM(CAST(p0.owneridname AS varchar(30))),'') /*owner_id*/ + ,COALESCE(TRIM(CAST(p0.firstname AS varchar(20))),'') /*first_name*/ + ,COALESCE(TRIM(CAST(p0.lastname AS varchar(20))),'') /*last_name*/ + ,cast(replace(replace(p0.mobilephone,'+86 ',''),' ','') as varchar(20)) /*mobile_phone*/ + ,cast(replace(replace(p0.telephone1,'+86 ',''),' ','') as varchar(20)) /*telphone*/ + ,COALESCE(TRIM(CAST(p0.emailaddress1 AS varchar(50))),'') /*email*/ + ,COALESCE(TRIM(CAST(p0.tek_division1 AS varchar(50))),'') /*cust_dept*/ + ,COALESCE(TRIM(CAST(p0.jobtitle AS varchar(50))),'') /*cust_title*/ + ,COALESCE(TRIM(CAST(p0.tek_jobfunctionidname AS varchar(50))),'') /*job_function*/ + ,COALESCE(TRIM(CAST(p0.suffix AS varchar(50))),'') /*suffix_info*/ + ,COALESCE(TRIM(CAST(p0.address1_line1 AS varchar(50))),'') /*address_detail*/ + ,COALESCE(TRIM(CAST(p0.address1_city AS varchar(20))),'') /*city_name*/ + ,COALESCE(TRIM(CAST(p0.tek_address1_stateidname AS varchar(20))),'') /*prov_name*/ + ,COALESCE(TRIM(CAST(p0.address1_postalcode AS varchar(20))),'') /*post_cd*/ + ,COALESCE(TRIM(CAST(p0.address1_country AS varchar(20))),'') /*country_name*/ + ,COALESCE(TRIM(CAST(p0.tek_ccpapplication AS varchar(200))),'') /*ccp_app*/ + ,COALESCE(TRIM(CAST(p0.tek_ccpproductinterest AS varchar(200))),'') /*product_interst*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.tek_acquisitiondate AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*acq_time*/ + ,COALESCE(cast(p0.tek_countofactivepartnerleads AS int),0) /*active_leads_count*/ + ,COALESCE(CAST(p0.tek_countofapplication2 AS int),0) /*app_count*/ + ,COALESCE(CAST(p0.tek_recordcountccp AS int),0) /*ccp_record_count*/ + ,COALESCE(CAST(p0.tek_countofgeneralproductinterest2 AS int),0) /*gen_product_interst_count*/ + ,COALESCE(CAST(p0.tek_countofsubapplication2 AS int),0) /*sub_app_count*/ + ,COALESCE(TRIM(CAST(p0.tek_acquisitioncampaignidname AS varchar(200))),'') /*acq_campaign_name*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.createdon AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*create_time*/ + ,COALESCE(TRIM(CAST(p0.createdbyname AS varchar(50))),'') /*create_person*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.modifiedon AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*modify_time*/ + ,COALESCE(TRIM(CAST(p0.modifiedbyname AS varchar(50))),'') /*modify_person*/ + ,COALESCE(TRIM(CAST(p0.tek_industry2idname AS varchar(50))),'') /*industry*/ + ,COALESCE(TRIM(CAST(p0.tek_subindustry2idname AS varchar(50))),'') /*sub_industry*/ + ,COALESCE(TRIM(CAST(p0.tek_msr_visibilityname AS varchar(20))),'') /*msr_visibility*/ + ,COALESCE(TRIM(CAST(p0.tek_agreestoprivacypolicytermsname AS varchar(20))),'') /*privacy_policy_ind*/ + ,COALESCE(CAST(p0.tek_contactscoringrollup AS int),0) /*contact_score*/ + ,COALESCE(TRIM(CAST(p0.tek_contactstagecodename AS varchar(50))),'') /*contact_stage*/ + ,COALESCE(TRIM(CAST(p0.tek_contacttypename AS varchar(20))),'') /*contact_type*/ + ,COALESCE(TRIM(CAST(p0.tek_consent_tocollectpersonalinfoname AS varchar(20))),'') /*collect_personal_info_ind*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.tek_consenttocollectpersonalinfodate AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*collect_personal_info_time*/ + ,COALESCE(TRIM(CAST(p0.donotphonename AS varchar(20))),'') /*phone_ind*/ + ,COALESCE(TRIM(CAST(p0.donotbulkpostalmail AS varchar(20))),'') /*bulk_postalmail_ind*/ + ,COALESCE(TRIM(CAST(p0.donotfax AS varchar(20))),'') /*fax_ind*/ + ,COALESCE(TRIM(CAST(p0.msgdpr_donottrack AS varchar(20))),'') /*track_ind*/ + ,COALESCE(TRIM(CAST(p0.tek_plussetupcompleted AS varchar(20))),'') /*set_up_ind*/ + ,COALESCE(TRIM(CAST(p0.donotbulkemailname AS varchar(20))),'') /*bulk_email_ind*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.tek_emailpermissiondate AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*email_permission_time*/ + ,COALESCE(TRIM(CAST(p0.tek_donotallowsmsname AS varchar(20))),'') /*sms_ind*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.tek_permissionsmsdate AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*sms_permission_time*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.tek_telemarketpermissiondate AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*telmarker_permission_time*/ + ,COALESCE(TRIM(CAST(p0.tek_hasindustryandapplication AS varchar(20))),'') /*industry_or_application_info*/ + ,COALESCE(TRIM(CAST(p0.adx_lastactivity AS varchar(20))),'') /*last_activity*/ + ,COALESCE(TRIM(CAST(p0.tek_marketablename AS varchar(20))),'') /*market_ind*/ + ,COALESCE(TRIM(CAST(p0.tek_marketingconsentname AS varchar(20))),'') /*marketing_consent*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.tek_marketingconsentdate AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*marketing_consent_time*/ + ,COALESCE(TRIM(CAST(p0.statecodename AS varchar(20))),'') /*state*/ + ,0 /*Etl_Batch_No*/ + ,TO_DATE(:TXDATE,'YYYYMMDD') /*Etl_First_Dt*/ + ,:ETLJOB /*Etl_Job*/ + ,current_timestamp(0) /*Etl_Proc_Dt*/ + ,TO_DATE(:TXDATE,'YYYYMMDD') /*Etl_Tx_Dt*/ + ,Substr('s98_s_crm_contact_part',1,3) /*Src_Sysname*/ + ,'s98_s_crm_contact_part' /*Src_Table*/ + +FROM (select case when tek_contactnumber='NULL' then null else tek_contactnumber end as tek_contactnumber +,case when tek_companyname='NULL' then null else tek_companyname end as tek_companyname +,case when accountidname='NULL' then null else accountidname end as accountidname +,case when owneridname='NULL' then null else owneridname end as owneridname +,case when firstname='NULL' then null else firstname end as firstname +,case when lastname='NULL' then null else lastname end as lastname +,case when mobilephone='NULL' then null else mobilephone end as mobilephone +,case when telephone1='NULL' then null else telephone1 end as telephone1 +,case when emailaddress1='NULL' then null else emailaddress1 end as emailaddress1 +,case when tek_division1='NULL' then null else tek_division1 end as tek_division1 +,case when jobtitle='NULL' then null else jobtitle end as jobtitle +,case when tek_jobfunctionidname='NULL' then null else tek_jobfunctionidname end as tek_jobfunctionidname +,case when suffix='NULL' then null else suffix end as suffix +,case when address1_line1='NULL' then null else address1_line1 end as address1_line1 +,case when address1_city='NULL' then null else address1_city end as address1_city +,case when tek_address1_stateidname='NULL' then null else tek_address1_stateidname end as tek_address1_stateidname +,case when address1_postalcode='NULL' then null else address1_postalcode end as address1_postalcode +,case when address1_country='NULL' then null else address1_country end as address1_country +,case when tek_ccpapplication='NULL' then null else tek_ccpapplication end as tek_ccpapplication +,case when tek_ccpproductinterest='NULL' then null else tek_ccpproductinterest end as tek_ccpproductinterest +,case when tek_acquisitiondate='NULL' then null else tek_acquisitiondate end as tek_acquisitiondate +,case when tek_countofactivepartnerleads='NULL' then null else tek_countofactivepartnerleads end as tek_countofactivepartnerleads +,case when tek_countofapplication2='NULL' then null else tek_countofapplication2 end as tek_countofapplication2 +,case when tek_recordcountccp='NULL' then null else tek_recordcountccp end as tek_recordcountccp +,case when tek_countofgeneralproductinterest2='NULL' then null else tek_countofgeneralproductinterest2 end as tek_countofgeneralproductinterest2 +,case when tek_countofsubapplication2='NULL' then null else tek_countofsubapplication2 end as tek_countofsubapplication2 +,case when tek_acquisitioncampaignidname='NULL' then null else tek_acquisitioncampaignidname end as tek_acquisitioncampaignidname +,case when createdon='NULL' then null else createdon end as createdon +,case when createdbyname='NULL' then null else createdbyname end as createdbyname +,case when modifiedon='NULL' then null else modifiedon end as modifiedon +,case when modifiedbyname='NULL' then null else modifiedbyname end as modifiedbyname +,case when tek_industry2idname='NULL' then null else tek_industry2idname end as tek_industry2idname +,case when tek_subindustry2idname='NULL' then null else tek_subindustry2idname end as tek_subindustry2idname +,case when tek_msr_visibilityname='NULL' then null else tek_msr_visibilityname end as tek_msr_visibilityname +,case when tek_agreestoprivacypolicytermsname='NULL' then null else tek_agreestoprivacypolicytermsname end as tek_agreestoprivacypolicytermsname +,case when tek_contactscoringrollup='NULL' then null else tek_contactscoringrollup end as tek_contactscoringrollup +,case when tek_contactstagecodename='NULL' then null else tek_contactstagecodename end as tek_contactstagecodename +,case when tek_contacttypename='NULL' then null else tek_contacttypename end as tek_contacttypename +,case when tek_consent_tocollectpersonalinfoname='NULL' then null else tek_consent_tocollectpersonalinfoname end as tek_consent_tocollectpersonalinfoname +,case when tek_consenttocollectpersonalinfodate='NULL' then null else tek_consenttocollectpersonalinfodate end as tek_consenttocollectpersonalinfodate +,case when donotphonename='NULL' then null else donotphonename end as donotphonename +,case when donotbulkpostalmail='NULL' then null else donotbulkpostalmail end as donotbulkpostalmail +,case when donotfax='NULL' then null else donotfax end as donotfax +,case when msgdpr_donottrack='NULL' then null else msgdpr_donottrack end as msgdpr_donottrack +,case when tek_plussetupcompleted='NULL' then null else tek_plussetupcompleted end as tek_plussetupcompleted +,case when donotbulkemailname='NULL' then null else donotbulkemailname end as donotbulkemailname +,case when tek_emailpermissiondate='NULL' then null else tek_emailpermissiondate end as tek_emailpermissiondate +,case when tek_donotallowsmsname='NULL' then null else tek_donotallowsmsname end as tek_donotallowsmsname +,case when tek_permissionsmsdate='NULL' then null else tek_permissionsmsdate end as tek_permissionsmsdate +,case when tek_telemarketpermissiondate='NULL' then null else tek_telemarketpermissiondate end as tek_telemarketpermissiondate +,case when tek_hasindustryandapplication='NULL' then null else tek_hasindustryandapplication end as tek_hasindustryandapplication +,case when adx_lastactivity='NULL' then null else adx_lastactivity end as adx_lastactivity +,case when tek_marketablename='NULL' then null else tek_marketablename end as tek_marketablename +,case when tek_marketingconsentname='NULL' then null else tek_marketingconsentname end as tek_marketingconsentname +,case when tek_marketingconsentdate='NULL' then null else tek_marketingconsentdate end as tek_marketingconsentdate +,case when statecodename='NULL' then null else statecodename end as statecodename +from p10_sa.s98_s_crm_contact_part) p0 + + +; + + + +/*将不同数据插入到临时表 */ +;INSERT INTO t01_crm_contact_agi_INS ( + company_name /*公司名称*/ + ,account_name /*账号名称*/ + ,owner_id /*责任人*/ + ,first_name /*姓*/ + ,last_name /*名*/ + ,mobile_phone /*手机号*/ + ,telphone /*电话号码*/ + ,email /*电子邮箱*/ + ,cust_dept /*部门*/ + ,cust_title /*职位*/ + ,job_function /*工作领域*/ + ,suffix_info /*附加信息*/ + ,address_detail /*详细地址*/ + ,city_name /*城市*/ + ,prov_name /*省份*/ + ,post_cd /*邮编*/ + ,country_name /*国家*/ + ,ccp_app /*CCP应用*/ + ,product_interst /*产品偏好*/ + ,acq_time /*购买时间*/ + ,active_leads_count /*活动线索数*/ + ,app_count /*应用数*/ + ,ccp_record_count /*CCP记录数*/ + ,gen_product_interst_count /*通用产品偏好数*/ + ,sub_app_count /*子应用数*/ + ,acq_campaign_name /*购买项目名*/ + ,create_time /*创建时间*/ + ,create_person /*创建人*/ + ,modify_time /*修改时间*/ + ,modify_person /*修改人*/ + ,industry /*行业*/ + ,sub_industry /*子行业*/ + ,msr_visibility /*msr关注度*/ + ,privacy_policy_ind /*隐私政策同意标志*/ + ,contact_score /*联系评分*/ + ,contact_stage /*联系层次*/ + ,contact_type /*联系类型*/ + ,collect_personal_info_ind /*个人信息收集标志*/ + ,collect_personal_info_time /*个人信息收集时间*/ + ,phone_ind /*电话标志*/ + ,bulk_postalmail_ind /*群发邮件标志*/ + ,fax_ind /*传真标志*/ + ,track_ind /*追踪标志*/ + ,set_up_ind /*创建标志*/ + ,bulk_email_ind /*群发电子邮件标志*/ + ,email_permission_time /*电子邮件权限时间*/ + ,sms_ind /*短信标志*/ + ,sms_permission_time /*短信权限时间*/ + ,telmarker_permission_time /*电话营销权限时间*/ + ,industry_or_application_info /*行业或应用标志*/ + ,last_activity /*最近活跃*/ + ,market_ind /*市场营销标志*/ + ,marketing_consent /*营销同意书*/ + ,marketing_consent_time /*营销同意时间*/ + ,state /*状态*/ + ,crm_contact_account /*CRM_CONTACT账号*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + +) + SELECT + P1.company_name /*公司名称*/ + ,P1.account_name /*账号名称*/ + ,P1.owner_id /*责任人*/ + ,P1.first_name /*姓*/ + ,P1.last_name /*名*/ + ,P1.mobile_phone /*手机号*/ + ,P1.telphone /*电话号码*/ + ,P1.email /*电子邮箱*/ + ,P1.cust_dept /*部门*/ + ,P1.cust_title /*职位*/ + ,P1.job_function /*工作领域*/ + ,P1.suffix_info /*附加信息*/ + ,P1.address_detail /*详细地址*/ + ,P1.city_name /*城市*/ + ,P1.prov_name /*省份*/ + ,P1.post_cd /*邮编*/ + ,P1.country_name /*国家*/ + ,P1.ccp_app /*CCP应用*/ + ,P1.product_interst /*产品偏好*/ + ,P1.acq_time /*购买时间*/ + ,P1.active_leads_count /*活动线索数*/ + ,P1.app_count /*应用数*/ + ,P1.ccp_record_count /*CCP记录数*/ + ,P1.gen_product_interst_count /*通用产品偏好数*/ + ,P1.sub_app_count /*子应用数*/ + ,P1.acq_campaign_name /*购买项目名*/ + ,P1.create_time /*创建时间*/ + ,P1.create_person /*创建人*/ + ,P1.modify_time /*修改时间*/ + ,P1.modify_person /*修改人*/ + ,P1.industry /*行业*/ + ,P1.sub_industry /*子行业*/ + ,P1.msr_visibility /*msr关注度*/ + ,P1.privacy_policy_ind /*隐私政策同意标志*/ + ,P1.contact_score /*联系评分*/ + ,P1.contact_stage /*联系层次*/ + ,P1.contact_type /*联系类型*/ + ,P1.collect_personal_info_ind /*个人信息收集标志*/ + ,P1.collect_personal_info_time /*个人信息收集时间*/ + ,P1.phone_ind /*电话标志*/ + ,P1.bulk_postalmail_ind /*群发邮件标志*/ + ,P1.fax_ind /*传真标志*/ + ,P1.track_ind /*追踪标志*/ + ,P1.set_up_ind /*创建标志*/ + ,P1.bulk_email_ind /*群发电子邮件标志*/ + ,P1.email_permission_time /*电子邮件权限时间*/ + ,P1.sms_ind /*短信标志*/ + ,P1.sms_permission_time /*短信权限时间*/ + ,P1.telmarker_permission_time /*电话营销权限时间*/ + ,P1.industry_or_application_info /*行业或应用标志*/ + ,P1.last_activity /*最近活跃*/ + ,P1.market_ind /*市场营销标志*/ + ,P1.marketing_consent /*营销同意书*/ + ,P1.marketing_consent_time /*营销同意时间*/ + ,P1.state /*状态*/ + ,P1.crm_contact_account /*CRM_CONTACT账号*/ + ,P1.Etl_Batch_No /*作业批次号*/ + ,P1.Etl_First_Dt /*最初入库时间*/ + ,P1.Etl_Job /*作业名称*/ + ,P1.Etl_Proc_Dt /*本次入库时间*/ + ,P1.Etl_Tx_Dt /*作业运行时间*/ + ,P1.Src_Sysname /*来源系统*/ + ,P1.Src_Table /*来源表*/ + +FROM t01_crm_contact_agi_CUR_I P1 +LEFT JOIN :PDMDB.t01_crm_contact P2 +ON P1.company_name = P2.company_name + AND P1.account_name = P2.account_name + AND P1.owner_id = P2.owner_id + AND P1.first_name = P2.first_name + AND P1.last_name = P2.last_name + AND P1.mobile_phone = P2.mobile_phone + AND P1.telphone = P2.telphone + AND P1.email = P2.email + AND P1.cust_dept = P2.cust_dept + AND P1.cust_title = P2.cust_title + AND P1.job_function = P2.job_function + AND P1.suffix_info = P2.suffix_info + AND P1.address_detail = P2.address_detail + AND P1.city_name = P2.city_name + AND P1.prov_name = P2.prov_name + AND P1.post_cd = P2.post_cd + AND P1.country_name = P2.country_name + AND P1.ccp_app = P2.ccp_app + AND P1.product_interst = P2.product_interst + AND P1.acq_time = P2.acq_time + AND P1.active_leads_count = P2.active_leads_count + AND P1.app_count = P2.app_count + AND P1.ccp_record_count = P2.ccp_record_count + AND P1.gen_product_interst_count = P2.gen_product_interst_count + AND P1.sub_app_count = P2.sub_app_count + AND P1.acq_campaign_name = P2.acq_campaign_name + AND P1.create_time = P2.create_time + AND P1.create_person = P2.create_person + AND P1.modify_time = P2.modify_time + AND P1.modify_person = P2.modify_person + AND P1.industry = P2.industry + AND P1.sub_industry = P2.sub_industry + AND P1.msr_visibility = P2.msr_visibility + AND P1.privacy_policy_ind = P2.privacy_policy_ind + AND P1.contact_score = P2.contact_score + AND P1.contact_stage = P2.contact_stage + AND P1.contact_type = P2.contact_type + AND P1.collect_personal_info_ind = P2.collect_personal_info_ind + AND P1.collect_personal_info_time = P2.collect_personal_info_time + AND P1.phone_ind = P2.phone_ind + AND P1.bulk_postalmail_ind = P2.bulk_postalmail_ind + AND P1.fax_ind = P2.fax_ind + AND P1.track_ind = P2.track_ind + AND P1.set_up_ind = P2.set_up_ind + AND P1.bulk_email_ind = P2.bulk_email_ind + AND P1.email_permission_time = P2.email_permission_time + AND P1.sms_ind = P2.sms_ind + AND P1.sms_permission_time = P2.sms_permission_time + AND P1.telmarker_permission_time = P2.telmarker_permission_time + AND P1.industry_or_application_info = P2.industry_or_application_info + AND P1.last_activity = P2.last_activity + AND P1.market_ind = P2.market_ind + AND P1.marketing_consent = P2.marketing_consent + AND P1.marketing_consent_time = P2.marketing_consent_time + AND P1.state = P2.state + AND P1.crm_contact_account = P2.crm_contact_account + +WHERE P2.company_name IS NULL + OR P2.account_name IS NULL + OR P2.owner_id IS NULL + OR P2.first_name IS NULL + OR P2.last_name IS NULL + OR P2.mobile_phone IS NULL + OR P2.telphone IS NULL + OR P2.email IS NULL + OR P2.cust_dept IS NULL + OR P2.cust_title IS NULL + OR P2.job_function IS NULL + OR P2.suffix_info IS NULL + OR P2.address_detail IS NULL + OR P2.city_name IS NULL + OR P2.prov_name IS NULL + OR P2.post_cd IS NULL + OR P2.country_name IS NULL + OR P2.ccp_app IS NULL + OR P2.product_interst IS NULL + OR P2.acq_time IS NULL + OR P2.active_leads_count IS NULL + OR P2.app_count IS NULL + OR P2.ccp_record_count IS NULL + OR P2.gen_product_interst_count IS NULL + OR P2.sub_app_count IS NULL + OR P2.acq_campaign_name IS NULL + OR P2.create_time IS NULL + OR P2.create_person IS NULL + OR P2.modify_time IS NULL + OR P2.modify_person IS NULL + OR P2.industry IS NULL + OR P2.sub_industry IS NULL + OR P2.msr_visibility IS NULL + OR P2.privacy_policy_ind IS NULL + OR P2.contact_score IS NULL + OR P2.contact_stage IS NULL + OR P2.contact_type IS NULL + OR P2.collect_personal_info_ind IS NULL + OR P2.collect_personal_info_time IS NULL + OR P2.phone_ind IS NULL + OR P2.bulk_postalmail_ind IS NULL + OR P2.fax_ind IS NULL + OR P2.track_ind IS NULL + OR P2.set_up_ind IS NULL + OR P2.bulk_email_ind IS NULL + OR P2.email_permission_time IS NULL + OR P2.sms_ind IS NULL + OR P2.sms_permission_time IS NULL + OR P2.telmarker_permission_time IS NULL + OR P2.industry_or_application_info IS NULL + OR P2.last_activity IS NULL + OR P2.market_ind IS NULL + OR P2.marketing_consent IS NULL + OR P2.marketing_consent_time IS NULL + OR P2.state IS NULL + OR P2.crm_contact_account IS NULL + +; +/*将新增数据插入到目标表 */ +;INSERT INTO :PDMDB.t01_crm_contact ( + company_name /*公司名称*/ + ,account_name /*账号名称*/ + ,owner_id /*责任人*/ + ,first_name /*姓*/ + ,last_name /*名*/ + ,mobile_phone /*手机号*/ + ,telphone /*电话号码*/ + ,email /*电子邮箱*/ + ,cust_dept /*部门*/ + ,cust_title /*职位*/ + ,job_function /*工作领域*/ + ,suffix_info /*附加信息*/ + ,address_detail /*详细地址*/ + ,city_name /*城市*/ + ,prov_name /*省份*/ + ,post_cd /*邮编*/ + ,country_name /*国家*/ + ,ccp_app /*CCP应用*/ + ,product_interst /*产品偏好*/ + ,acq_time /*购买时间*/ + ,active_leads_count /*活动线索数*/ + ,app_count /*应用数*/ + ,ccp_record_count /*CCP记录数*/ + ,gen_product_interst_count /*通用产品偏好数*/ + ,sub_app_count /*子应用数*/ + ,acq_campaign_name /*购买项目名*/ + ,create_time /*创建时间*/ + ,create_person /*创建人*/ + ,modify_time /*修改时间*/ + ,modify_person /*修改人*/ + ,industry /*行业*/ + ,sub_industry /*子行业*/ + ,msr_visibility /*msr关注度*/ + ,privacy_policy_ind /*隐私政策同意标志*/ + ,contact_score /*联系评分*/ + ,contact_stage /*联系层次*/ + ,contact_type /*联系类型*/ + ,collect_personal_info_ind /*个人信息收集标志*/ + ,collect_personal_info_time /*个人信息收集时间*/ + ,phone_ind /*电话标志*/ + ,bulk_postalmail_ind /*群发邮件标志*/ + ,fax_ind /*传真标志*/ + ,track_ind /*追踪标志*/ + ,set_up_ind /*创建标志*/ + ,bulk_email_ind /*群发电子邮件标志*/ + ,email_permission_time /*电子邮件权限时间*/ + ,sms_ind /*短信标志*/ + ,sms_permission_time /*短信权限时间*/ + ,telmarker_permission_time /*电话营销权限时间*/ + ,industry_or_application_info /*行业或应用标志*/ + ,last_activity /*最近活跃*/ + ,market_ind /*市场营销标志*/ + ,marketing_consent /*营销同意书*/ + ,marketing_consent_time /*营销同意时间*/ + ,state /*状态*/ + ,crm_contact_account /*CRM_CONTACT账号*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + +) +SELECT + P1.company_name /*公司名称*/ + ,P1.account_name /*账号名称*/ + ,P1.owner_id /*责任人*/ + ,P1.first_name /*姓*/ + ,P1.last_name /*名*/ + ,P1.mobile_phone /*手机号*/ + ,P1.telphone /*电话号码*/ + ,P1.email /*电子邮箱*/ + ,P1.cust_dept /*部门*/ + ,P1.cust_title /*职位*/ + ,P1.job_function /*工作领域*/ + ,P1.suffix_info /*附加信息*/ + ,P1.address_detail /*详细地址*/ + ,P1.city_name /*城市*/ + ,P1.prov_name /*省份*/ + ,P1.post_cd /*邮编*/ + ,P1.country_name /*国家*/ + ,P1.ccp_app /*CCP应用*/ + ,P1.product_interst /*产品偏好*/ + ,P1.acq_time /*购买时间*/ + ,P1.active_leads_count /*活动线索数*/ + ,P1.app_count /*应用数*/ + ,P1.ccp_record_count /*CCP记录数*/ + ,P1.gen_product_interst_count /*通用产品偏好数*/ + ,P1.sub_app_count /*子应用数*/ + ,P1.acq_campaign_name /*购买项目名*/ + ,P1.create_time /*创建时间*/ + ,P1.create_person /*创建人*/ + ,P1.modify_time /*修改时间*/ + ,P1.modify_person /*修改人*/ + ,P1.industry /*行业*/ + ,P1.sub_industry /*子行业*/ + ,P1.msr_visibility /*msr关注度*/ + ,P1.privacy_policy_ind /*隐私政策同意标志*/ + ,P1.contact_score /*联系评分*/ + ,P1.contact_stage /*联系层次*/ + ,P1.contact_type /*联系类型*/ + ,P1.collect_personal_info_ind /*个人信息收集标志*/ + ,P1.collect_personal_info_time /*个人信息收集时间*/ + ,P1.phone_ind /*电话标志*/ + ,P1.bulk_postalmail_ind /*群发邮件标志*/ + ,P1.fax_ind /*传真标志*/ + ,P1.track_ind /*追踪标志*/ + ,P1.set_up_ind /*创建标志*/ + ,P1.bulk_email_ind /*群发电子邮件标志*/ + ,P1.email_permission_time /*电子邮件权限时间*/ + ,P1.sms_ind /*短信标志*/ + ,P1.sms_permission_time /*短信权限时间*/ + ,P1.telmarker_permission_time /*电话营销权限时间*/ + ,P1.industry_or_application_info /*行业或应用标志*/ + ,P1.last_activity /*最近活跃*/ + ,P1.market_ind /*市场营销标志*/ + ,P1.marketing_consent /*营销同意书*/ + ,P1.marketing_consent_time /*营销同意时间*/ + ,P1.state /*状态*/ + ,P1.crm_contact_account /*CRM_CONTACT账号*/ + ,P1.Etl_Batch_No /*作业批次号*/ + ,P1.Etl_First_Dt /*最初入库时间*/ + ,P1.Etl_Job /*作业名称*/ + ,P1.Etl_Proc_Dt /*本次入库时间*/ + ,P1.Etl_Tx_Dt /*作业运行时间*/ + ,P1.Src_Sysname /*来源系统*/ + ,P1.Src_Table /*来源表*/ + +FROM t01_crm_contact_agi_INS P1 +ON CONFLICT ( crm_contact_account) +DO UPDATE SET + crm_contact_account=excluded.crm_contact_account + ,company_name=excluded.company_name + ,account_name=excluded.account_name + ,owner_id=excluded.owner_id + ,first_name=excluded.first_name + ,last_name=excluded.last_name + ,mobile_phone=excluded.mobile_phone + ,telphone=excluded.telphone + ,email=excluded.email + ,cust_dept=excluded.cust_dept + ,cust_title=excluded.cust_title + ,job_function=excluded.job_function + ,suffix_info=excluded.suffix_info + ,address_detail=excluded.address_detail + ,city_name=excluded.city_name + ,prov_name=excluded.prov_name + ,post_cd=excluded.post_cd + ,country_name=excluded.country_name + ,ccp_app=excluded.ccp_app + ,product_interst=excluded.product_interst + ,acq_time=excluded.acq_time + ,active_leads_count=excluded.active_leads_count + ,app_count=excluded.app_count + ,ccp_record_count=excluded.ccp_record_count + ,gen_product_interst_count=excluded.gen_product_interst_count + ,sub_app_count=excluded.sub_app_count + ,acq_campaign_name=excluded.acq_campaign_name + ,create_time=excluded.create_time + ,create_person=excluded.create_person + ,modify_time=excluded.modify_time + ,modify_person=excluded.modify_person + ,industry=excluded.industry + ,sub_industry=excluded.sub_industry + ,msr_visibility=excluded.msr_visibility + ,privacy_policy_ind=excluded.privacy_policy_ind + ,contact_score=excluded.contact_score + ,contact_stage=excluded.contact_stage + ,contact_type=excluded.contact_type + ,collect_personal_info_ind=excluded.collect_personal_info_ind + ,collect_personal_info_time=excluded.collect_personal_info_time + ,phone_ind=excluded.phone_ind + ,bulk_postalmail_ind=excluded.bulk_postalmail_ind + ,fax_ind=excluded.fax_ind + ,track_ind=excluded.track_ind + ,set_up_ind=excluded.set_up_ind + ,bulk_email_ind=excluded.bulk_email_ind + ,email_permission_time=excluded.email_permission_time + ,sms_ind=excluded.sms_ind + ,sms_permission_time=excluded.sms_permission_time + ,telmarker_permission_time=excluded.telmarker_permission_time + ,industry_or_application_info=excluded.industry_or_application_info + ,last_activity=excluded.last_activity + ,market_ind=excluded.market_ind + ,marketing_consent=excluded.marketing_consent + ,marketing_consent_time=excluded.marketing_consent_time + ,state=excluded.state + ,Etl_Batch_No=excluded.Etl_Batch_No + ,Etl_First_Dt=excluded.Etl_First_Dt + ,Etl_Job=excluded.Etl_Job + ,Etl_Proc_Dt=excluded.Etl_Proc_Dt + ,Etl_Tx_Dt=excluded.Etl_Tx_Dt + ,Src_Sysname=excluded.Src_Sysname + ,Src_Table=excluded.Src_Table + + +; +/*****程序结束退出 */ +\q +