Compare commits
2 Commits
dc6066b00c
...
ed8234a7f6
Author | SHA1 | Date |
---|---|---|
|
ed8234a7f6 | |
|
bd1c513cb2 |
|
@ -0,0 +1,102 @@
|
|||
/*******Main Section**************************************************************************/
|
||||
\set ON_ERROR_STOP on
|
||||
\set AUTOCOMMIT on
|
||||
\timing on
|
||||
delete from p10_sa.S98_S_livechat
|
||||
;
|
||||
insert into p10_sa.S98_S_livechat
|
||||
( conference_id
|
||||
, create_date
|
||||
, start_date
|
||||
, start_url
|
||||
, referrer
|
||||
, chat_dura
|
||||
, queue_dura
|
||||
, visitor_id
|
||||
, visit_nick
|
||||
, visitor_ip
|
||||
, visitor_email
|
||||
, operator_id
|
||||
, group_id
|
||||
, group_name
|
||||
, rate
|
||||
, last_rate_comment
|
||||
, operator_1_nick
|
||||
, operator_2_nick
|
||||
, operator_3_nick
|
||||
, operator_4_nick
|
||||
, etl_tx_dt )
|
||||
select
|
||||
conference_id
|
||||
, create_date
|
||||
, start_date
|
||||
, start_url
|
||||
, referrer
|
||||
, chat_dura
|
||||
, queue_dura
|
||||
, visitor_id
|
||||
, visit_nick
|
||||
, visitor_ip
|
||||
, visitor_email
|
||||
, operator_id
|
||||
, group_id
|
||||
, group_name
|
||||
, rate
|
||||
, last_rate_comment
|
||||
, operator_1_nick
|
||||
, operator_2_nick
|
||||
, operator_3_nick
|
||||
, operator_4_nick
|
||||
, etl_tx_dt
|
||||
from p00_tal.S98_S_livechat
|
||||
;
|
||||
delete from p12_sfull.S98_S_livechat
|
||||
;
|
||||
;
|
||||
insert into p12_sfull.S98_S_livechat
|
||||
( conference_id
|
||||
, create_date
|
||||
, start_date
|
||||
, start_url
|
||||
, referrer
|
||||
, chat_dura
|
||||
, queue_dura
|
||||
, visitor_id
|
||||
, visit_nick
|
||||
, visitor_ip
|
||||
, visitor_email
|
||||
, operator_id
|
||||
, group_id
|
||||
, group_name
|
||||
, rate
|
||||
, last_rate_comment
|
||||
, operator_1_nick
|
||||
, operator_2_nick
|
||||
, operator_3_nick
|
||||
, operator_4_nick
|
||||
, etl_tx_dt )
|
||||
select
|
||||
conference_id
|
||||
, create_date
|
||||
, start_date
|
||||
, start_url
|
||||
, referrer
|
||||
, chat_dura
|
||||
, queue_dura
|
||||
, visitor_id
|
||||
, visit_nick
|
||||
, visitor_ip
|
||||
, visitor_email
|
||||
, operator_id
|
||||
, group_id
|
||||
, group_name
|
||||
, rate
|
||||
, last_rate_comment
|
||||
, operator_1_nick
|
||||
, operator_2_nick
|
||||
, operator_3_nick
|
||||
, operator_4_nick
|
||||
, etl_tx_dt
|
||||
from p10_sa.S98_S_livechat
|
||||
;
|
||||
\q
|
|
@ -1,32 +0,0 @@
|
|||
|
||||
CREATE FOREIGN TABLE if not exists p00_tal.S98_S_livechat (
|
||||
conference_id TEXT
|
||||
, create_date TEXT
|
||||
, start_date TEXT
|
||||
, start_url TEXT
|
||||
, referrer TEXT
|
||||
, chat_dura TEXT
|
||||
, queue_dura TEXT
|
||||
, visitor_id TEXT
|
||||
, visit_nick TEXT
|
||||
, visitor_ip TEXT
|
||||
, visitor_email TEXT
|
||||
, operator_id TEXT
|
||||
, group_id TEXT
|
||||
, group_name TEXT
|
||||
, rate TEXT
|
||||
, last_rate_comment TEXT
|
||||
, operator_1_nick TEXT
|
||||
, operator_2_nick TEXT
|
||||
, operator_3_nick TEXT
|
||||
, operator_4_nick TEXT
|
||||
, etl_tx_dt TIMESTAMP
|
||||
)
|
||||
|
||||
|
||||
SERVER pgsql_server_S98_S OPTIONS(schema_name 'data_api', table_name 'livechat' );
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,99 +0,0 @@
|
|||
|
||||
create table if not exists p10_sa.S98_S_livechat (
|
||||
conference_id TEXT
|
||||
, create_date TEXT
|
||||
, start_date TEXT
|
||||
, start_url TEXT
|
||||
, referrer TEXT
|
||||
, chat_dura TEXT
|
||||
, queue_dura TEXT
|
||||
, visitor_id TEXT
|
||||
, visit_nick TEXT
|
||||
, visitor_ip TEXT
|
||||
, visitor_email TEXT
|
||||
, operator_id TEXT
|
||||
, group_id TEXT
|
||||
, group_name TEXT
|
||||
, rate TEXT
|
||||
, last_rate_comment TEXT
|
||||
, operator_1_nick TEXT
|
||||
, operator_2_nick TEXT
|
||||
, operator_3_nick TEXT
|
||||
, operator_4_nick TEXT
|
||||
, etl_tx_dt TIMESTAMP
|
||||
) ;
|
||||
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.conference_id IS 'conferenceId';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.create_date IS 'chat creation date Asia/Shanghai';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.start_date IS 'chat start date Asia/Shanghai';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.start_url IS 'chat start url';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.referrer IS 'referrer';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.chat_dura IS 'chat duration in seconds';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.queue_dura IS 'queue duration in seconds';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.visitor_id IS 'visitor livechat id';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.visit_nick IS 'visitor nick';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.visitor_ip IS 'visitor ip';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.visitor_email IS 'visitor email';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.operator_id IS 'last operator id';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.group_id IS 'group';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.group_name IS 'group name';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.rate IS 'rate';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.last_rate_comment IS 'last rate comment';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.operator_1_nick IS 'operator 1 nick';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.operator_2_nick IS 'operator 2 nick';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.operator_3_nick IS 'operator 3 nick';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.operator_4_nick IS 'operator 4 nick';
|
||||
COMMENT ON COLUMN p10_sa.S98_S_livechat.etl_tx_dt IS '';
|
||||
|
||||
COMMENT ON TABLE p10_sa.S98_S_livechat IS '';
|
||||
|
||||
|
||||
|
||||
create table if not exists p12_sfull.S98_S_livechat (
|
||||
conference_id TEXT
|
||||
, create_date TEXT
|
||||
, start_date TEXT
|
||||
, start_url TEXT
|
||||
, referrer TEXT
|
||||
, chat_dura TEXT
|
||||
, queue_dura TEXT
|
||||
, visitor_id TEXT
|
||||
, visit_nick TEXT
|
||||
, visitor_ip TEXT
|
||||
, visitor_email TEXT
|
||||
, operator_id TEXT
|
||||
, group_id TEXT
|
||||
, group_name TEXT
|
||||
, rate TEXT
|
||||
, last_rate_comment TEXT
|
||||
, operator_1_nick TEXT
|
||||
, operator_2_nick TEXT
|
||||
, operator_3_nick TEXT
|
||||
, operator_4_nick TEXT
|
||||
, etl_tx_dt TIMESTAMP
|
||||
) ;
|
||||
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.conference_id IS 'conferenceId';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.create_date IS 'chat creation date Asia/Shanghai';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.start_date IS 'chat start date Asia/Shanghai';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.start_url IS 'chat start url';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.referrer IS 'referrer';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.chat_dura IS 'chat duration in seconds';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.queue_dura IS 'queue duration in seconds';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.visitor_id IS 'visitor livechat id';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.visit_nick IS 'visitor nick';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.visitor_ip IS 'visitor ip';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.visitor_email IS 'visitor email';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.operator_id IS 'last operator id';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.group_id IS 'group';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.group_name IS 'group name';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.rate IS 'rate';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.last_rate_comment IS 'last rate comment';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.operator_1_nick IS 'operator 1 nick';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.operator_2_nick IS 'operator 2 nick';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.operator_3_nick IS 'operator 3 nick';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.operator_4_nick IS 'operator 4 nick';
|
||||
COMMENT ON COLUMN p12_sfull.S98_S_livechat.etl_tx_dt IS '';
|
||||
|
||||
COMMENT ON TABLE p12_sfull.S98_S_livechat IS '';
|
||||
|
|
@ -1,61 +0,0 @@
|
|||
#!/usr/bin/python
|
||||
# -*- encoding=utf-8 -*-
|
||||
from airflow import DAG
|
||||
from datetime import datetime, timedelta
|
||||
from airflow.contrib.hooks.ssh_hook import SSHHook
|
||||
from airflow.contrib.operators.ssh_operator import SSHOperator
|
||||
from airflow.sensors.external_task_sensor import ExternalTaskSensor
|
||||
import json
|
||||
|
||||
from airflow.operators.email_operator import EmailOperator
|
||||
from airflow.utils.trigger_rule import TriggerRule
|
||||
|
||||
|
||||
sshHook = SSHHook(ssh_conn_id ='ssh_air')
|
||||
default_args = {
|
||||
'owner': 'info@idgvalue.com',
|
||||
'email': [''],
|
||||
'email_on_failure': True,
|
||||
'email_on_retry':True,
|
||||
'start_date': datetime(2022, 9, 12),
|
||||
'depends_on_past': False,
|
||||
'retries': 6,
|
||||
'retry_delay': timedelta(minutes=10),
|
||||
}
|
||||
|
||||
dag = DAG('wf_dag_tk_cust', default_args=default_args,
|
||||
schedule_interval="0 0 * * *",
|
||||
catchup=False,
|
||||
dagrun_timeout=timedelta(minutes=160),
|
||||
max_active_runs=3)
|
||||
|
||||
task_failed = EmailOperator (
|
||||
dag=dag,
|
||||
trigger_rule=TriggerRule.ONE_FAILED,
|
||||
task_id="task_failed",
|
||||
to=["info@idgvalue.com"],
|
||||
cc=[""],
|
||||
subject="tk_cust_failed",
|
||||
html_content='<h3>您好,tk_cust作业失败,请及时处理" </h3>')
|
||||
|
||||
file_Tk01 = SSHOperator(
|
||||
ssh_hook=sshHook,
|
||||
task_id='file_Tk01',
|
||||
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
|
||||
params={'my_param':"Tk01"},
|
||||
depends_on_past=False,
|
||||
retries=3,
|
||||
dag=dag)
|
||||
|
||||
|
||||
livechat_6381 = SSHOperator(
|
||||
ssh_hook=sshHook,
|
||||
task_id='livechat_6381',
|
||||
command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ',
|
||||
params={'my_param':"S98_S_livechat"},
|
||||
depends_on_past=False,
|
||||
retries=3,
|
||||
dag=dag)
|
||||
|
||||
file_Tk01 >> livechat_6381
|
||||
livechat_6381 >> task_failed
|
|
@ -1,62 +0,0 @@
|
|||
|
||||
DROP TABLE IF EXISTS p20_pdm.t01_chatrecord;
|
||||
CREATE TABLE IF NOT EXISTS p20_pdm.t01_chatrecord (
|
||||
conference_id text
|
||||
, create_date text
|
||||
, start_date text
|
||||
, start_url text
|
||||
, referrer text
|
||||
, chat_dura text
|
||||
, queue_dura text
|
||||
, visitor_id text
|
||||
, visit_nick text
|
||||
, visitor_ip text
|
||||
, visitor_email text
|
||||
, operator_id text
|
||||
, group_id text
|
||||
, group_name text
|
||||
, rate text
|
||||
, last_rate_comment text
|
||||
, operator_1_nick text
|
||||
, operator_2_nick text
|
||||
, operator_3_nick text
|
||||
, operator_4_nick text
|
||||
, 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( conference_id )
|
||||
);
|
||||
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.conference_id IS 'conferenceId';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.create_date IS 'chat creation date Asia/Shanghai';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.start_date IS 'chat start date Asia/Shanghai';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.start_url IS 'chat start url';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.referrer IS 'referrer';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.chat_dura IS 'chat duration in seconds';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.queue_dura IS 'queue duration in seconds';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.visitor_id IS 'visitor livechat id';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.visit_nick IS 'visitor nick';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.visitor_ip IS 'visitor ip';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.visitor_email IS 'visitor email';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.operator_id IS 'last operator id';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.group_id IS 'group';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.group_name IS 'group name';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.rate IS 'rate';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.last_rate_comment IS 'last rate comment';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.operator_1_nick IS 'operator 1 nick';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.operator_2_nick IS 'operator 2 nick';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.operator_3_nick IS 'operator 3 nick';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.operator_4_nick IS 'operator 4 nick';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.Etl_Batch_No IS '作业批次号';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.Etl_First_Dt IS '最初入库时间';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.Etl_Job IS '作业名称';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.Etl_Proc_Dt IS '本次入库时间';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.Etl_Tx_Dt IS '作业运行时间';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.Src_Sysname IS '来源系统';
|
||||
COMMENT ON COLUMN p20_pdm.t01_chatrecord.Src_Table IS '来源表';
|
||||
|
||||
COMMENT ON TABLE p20_pdm.t01_chatrecord IS '聊天记录';
|
|
@ -1,307 +0,0 @@
|
|||
/***************************************************************************************************/
|
||||
/*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_chatrecord(聊天记录) */
|
||||
/*Create Date:2023-12-26 11:11:23 */
|
||||
/*SDM Developed By: dev */
|
||||
/*SDM Developed Date: 2023-12-26 */
|
||||
/*SDM Checked By: dev */
|
||||
/*SDM Checked Date: 2023-12-26 */
|
||||
/*Script Developed By: dev */
|
||||
/*Script Checked By: dev */
|
||||
/*Source table 1: p10_sa.s98_s_livechat */
|
||||
/*Job Type: Inbound transform (Tier 1 to Tier 2) */
|
||||
/*Target Table:t01_chatrecord */
|
||||
/*ETL Job Name:t01_chatrecord */
|
||||
/*ETL Frequency:Daily */
|
||||
/*ETL Policy:F2 */
|
||||
/********************************************************************************************/
|
||||
/*******Main Section**************************************************************************/
|
||||
\set ON_ERROR_STOP on
|
||||
\set AUTOCOMMIT on
|
||||
\timing on
|
||||
|
||||
|
||||
|
||||
/*创建临时表加载当前数据 */
|
||||
CREATE TEMPORARY TABLE t01_chatrecord_agi_CUR_I
|
||||
( LIKE :PDMDB.t01_chatrecord)
|
||||
ON COMMIT PRESERVE ROWS;
|
||||
|
||||
|
||||
|
||||
/*创建临时表加载不同数据 */
|
||||
CREATE TEMPORARY TABLE t01_chatrecord_agi_INS
|
||||
( LIKE :PDMDB.t01_chatrecord)
|
||||
ON COMMIT PRESERVE ROWS;
|
||||
|
||||
|
||||
/*****************************************************************************************************/
|
||||
/* GROUP 1:Source Table:s98_s_livechat****************************************************************/
|
||||
/*****************************************************************************************************/
|
||||
INSERT INTO t01_chatrecord_agi_CUR_I (
|
||||
conference_id /*conferenceId*/
|
||||
,create_date /*chat creation date Asia/Shanghai*/
|
||||
,start_date /*chat start date Asia/Shanghai*/
|
||||
,start_url /*chat start url*/
|
||||
,referrer /*referrer*/
|
||||
,chat_dura /*chat duration in seconds*/
|
||||
,queue_dura /*queue duration in seconds*/
|
||||
,visitor_id /*visitor livechat id*/
|
||||
,visit_nick /*visitor nick*/
|
||||
,visitor_ip /*visitor ip*/
|
||||
,visitor_email /*visitor email*/
|
||||
,operator_id /*last operator id*/
|
||||
,group_id /*group*/
|
||||
,group_name /*group name*/
|
||||
,rate /*rate*/
|
||||
,last_rate_comment /*last rate comment*/
|
||||
,operator_1_nick /*operator 1 nick*/
|
||||
,operator_2_nick /*operator 2 nick*/
|
||||
,operator_3_nick /*operator 3 nick*/
|
||||
,operator_4_nick /*operator 4 nick*/
|
||||
,Etl_Batch_No /*作业批次号*/
|
||||
,Etl_First_Dt /*最初入库时间*/
|
||||
,Etl_Job /*作业名称*/
|
||||
,Etl_Proc_Dt /*本次入库时间*/
|
||||
,Etl_Tx_Dt /*作业运行时间*/
|
||||
,Src_Sysname /*来源系统*/
|
||||
,Src_Table /*来源表*/
|
||||
)
|
||||
SELECT
|
||||
COALESCE(TRIM(p0.conference_id),'') /*conference_id*/
|
||||
,COALESCE(TRIM(p0.create_date),'') /*create_date*/
|
||||
,COALESCE(TRIM(p0.start_date),'') /*start_date*/
|
||||
,COALESCE(TRIM(p0.start_url),'') /*start_url*/
|
||||
,COALESCE(TRIM(p0.referrer),'') /*referrer*/
|
||||
,COALESCE(TRIM(p0.chat_dura),'') /*chat_dura*/
|
||||
,COALESCE(TRIM(p0.queue_dura),'') /*queue_dura*/
|
||||
,COALESCE(TRIM(p0.visitor_id),'') /*visitor_id*/
|
||||
,COALESCE(TRIM(p0.visit_nick),'') /*visit_nick*/
|
||||
,COALESCE(TRIM(p0.visitor_ip),'') /*visitor_ip*/
|
||||
,COALESCE(TRIM(p0.visitor_email),'') /*visitor_email*/
|
||||
,COALESCE(TRIM(p0.operator_id),'') /*operator_id*/
|
||||
,COALESCE(TRIM(p0.group_id),'') /*group_id*/
|
||||
,COALESCE(TRIM(p0.group_name),'') /*group_name*/
|
||||
,COALESCE(TRIM(p0.rate),'') /*rate*/
|
||||
,COALESCE(TRIM(p0.last_rate_comment),'') /*last_rate_comment*/
|
||||
,COALESCE(TRIM(p0.operator_1_nick),'') /*operator_1_nick*/
|
||||
,COALESCE(TRIM(p0.operator_2_nick),'') /*operator_2_nick*/
|
||||
,COALESCE(TRIM(p0.operator_3_nick),'') /*operator_3_nick*/
|
||||
,COALESCE(TRIM(p0.operator_4_nick),'') /*operator_4_nick*/
|
||||
,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_livechat',1,3) /*Src_Sysname*/
|
||||
,'s98_s_livechat' /*Src_Table*/
|
||||
|
||||
FROM p10_sa.s98_s_livechat p0
|
||||
;
|
||||
|
||||
|
||||
|
||||
/*将不同数据插入到临时表 */
|
||||
;INSERT INTO t01_chatrecord_agi_INS (
|
||||
create_date /*chat creation date Asia/Shanghai*/
|
||||
,start_date /*chat start date Asia/Shanghai*/
|
||||
,start_url /*chat start url*/
|
||||
,referrer /*referrer*/
|
||||
,chat_dura /*chat duration in seconds*/
|
||||
,queue_dura /*queue duration in seconds*/
|
||||
,visitor_id /*visitor livechat id*/
|
||||
,visit_nick /*visitor nick*/
|
||||
,visitor_ip /*visitor ip*/
|
||||
,visitor_email /*visitor email*/
|
||||
,operator_id /*last operator id*/
|
||||
,group_id /*group*/
|
||||
,group_name /*group name*/
|
||||
,rate /*rate*/
|
||||
,last_rate_comment /*last rate comment*/
|
||||
,operator_1_nick /*operator 1 nick*/
|
||||
,operator_2_nick /*operator 2 nick*/
|
||||
,operator_3_nick /*operator 3 nick*/
|
||||
,operator_4_nick /*operator 4 nick*/
|
||||
,conference_id /*conferenceId*/
|
||||
,Etl_Batch_No /*作业批次号*/
|
||||
,Etl_First_Dt /*最初入库时间*/
|
||||
,Etl_Job /*作业名称*/
|
||||
,Etl_Proc_Dt /*本次入库时间*/
|
||||
,Etl_Tx_Dt /*作业运行时间*/
|
||||
,Src_Sysname /*来源系统*/
|
||||
,Src_Table /*来源表*/
|
||||
|
||||
)
|
||||
SELECT
|
||||
P1.create_date /*chat creation date Asia/Shanghai*/
|
||||
,P1.start_date /*chat start date Asia/Shanghai*/
|
||||
,P1.start_url /*chat start url*/
|
||||
,P1.referrer /*referrer*/
|
||||
,P1.chat_dura /*chat duration in seconds*/
|
||||
,P1.queue_dura /*queue duration in seconds*/
|
||||
,P1.visitor_id /*visitor livechat id*/
|
||||
,P1.visit_nick /*visitor nick*/
|
||||
,P1.visitor_ip /*visitor ip*/
|
||||
,P1.visitor_email /*visitor email*/
|
||||
,P1.operator_id /*last operator id*/
|
||||
,P1.group_id /*group*/
|
||||
,P1.group_name /*group name*/
|
||||
,P1.rate /*rate*/
|
||||
,P1.last_rate_comment /*last rate comment*/
|
||||
,P1.operator_1_nick /*operator 1 nick*/
|
||||
,P1.operator_2_nick /*operator 2 nick*/
|
||||
,P1.operator_3_nick /*operator 3 nick*/
|
||||
,P1.operator_4_nick /*operator 4 nick*/
|
||||
,P1.conference_id /*conferenceId*/
|
||||
,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_chatrecord_agi_CUR_I P1
|
||||
LEFT JOIN :PDMDB.t01_chatrecord P2
|
||||
ON P1.create_date = P2.create_date
|
||||
AND P1.start_date = P2.start_date
|
||||
AND P1.start_url = P2.start_url
|
||||
AND P1.referrer = P2.referrer
|
||||
AND P1.chat_dura = P2.chat_dura
|
||||
AND P1.queue_dura = P2.queue_dura
|
||||
AND P1.visitor_id = P2.visitor_id
|
||||
AND P1.visit_nick = P2.visit_nick
|
||||
AND P1.visitor_ip = P2.visitor_ip
|
||||
AND P1.visitor_email = P2.visitor_email
|
||||
AND P1.operator_id = P2.operator_id
|
||||
AND P1.group_id = P2.group_id
|
||||
AND P1.group_name = P2.group_name
|
||||
AND P1.rate = P2.rate
|
||||
AND P1.last_rate_comment = P2.last_rate_comment
|
||||
AND P1.operator_1_nick = P2.operator_1_nick
|
||||
AND P1.operator_2_nick = P2.operator_2_nick
|
||||
AND P1.operator_3_nick = P2.operator_3_nick
|
||||
AND P1.operator_4_nick = P2.operator_4_nick
|
||||
AND P1.conference_id = P2.conference_id
|
||||
|
||||
WHERE P2.create_date IS NULL
|
||||
OR P2.start_date IS NULL
|
||||
OR P2.start_url IS NULL
|
||||
OR P2.referrer IS NULL
|
||||
OR P2.chat_dura IS NULL
|
||||
OR P2.queue_dura IS NULL
|
||||
OR P2.visitor_id IS NULL
|
||||
OR P2.visit_nick IS NULL
|
||||
OR P2.visitor_ip IS NULL
|
||||
OR P2.visitor_email IS NULL
|
||||
OR P2.operator_id IS NULL
|
||||
OR P2.group_id IS NULL
|
||||
OR P2.group_name IS NULL
|
||||
OR P2.rate IS NULL
|
||||
OR P2.last_rate_comment IS NULL
|
||||
OR P2.operator_1_nick IS NULL
|
||||
OR P2.operator_2_nick IS NULL
|
||||
OR P2.operator_3_nick IS NULL
|
||||
OR P2.operator_4_nick IS NULL
|
||||
OR P2.conference_id IS NULL
|
||||
|
||||
;
|
||||
/*将新增数据插入到目标表 */
|
||||
;INSERT INTO :PDMDB.t01_chatrecord (
|
||||
create_date /*chat creation date Asia/Shanghai*/
|
||||
,start_date /*chat start date Asia/Shanghai*/
|
||||
,start_url /*chat start url*/
|
||||
,referrer /*referrer*/
|
||||
,chat_dura /*chat duration in seconds*/
|
||||
,queue_dura /*queue duration in seconds*/
|
||||
,visitor_id /*visitor livechat id*/
|
||||
,visit_nick /*visitor nick*/
|
||||
,visitor_ip /*visitor ip*/
|
||||
,visitor_email /*visitor email*/
|
||||
,operator_id /*last operator id*/
|
||||
,group_id /*group*/
|
||||
,group_name /*group name*/
|
||||
,rate /*rate*/
|
||||
,last_rate_comment /*last rate comment*/
|
||||
,operator_1_nick /*operator 1 nick*/
|
||||
,operator_2_nick /*operator 2 nick*/
|
||||
,operator_3_nick /*operator 3 nick*/
|
||||
,operator_4_nick /*operator 4 nick*/
|
||||
,conference_id /*conferenceId*/
|
||||
,Etl_Batch_No /*作业批次号*/
|
||||
,Etl_First_Dt /*最初入库时间*/
|
||||
,Etl_Job /*作业名称*/
|
||||
,Etl_Proc_Dt /*本次入库时间*/
|
||||
,Etl_Tx_Dt /*作业运行时间*/
|
||||
,Src_Sysname /*来源系统*/
|
||||
,Src_Table /*来源表*/
|
||||
|
||||
)
|
||||
SELECT
|
||||
P1.create_date /*chat creation date Asia/Shanghai*/
|
||||
,P1.start_date /*chat start date Asia/Shanghai*/
|
||||
,P1.start_url /*chat start url*/
|
||||
,P1.referrer /*referrer*/
|
||||
,P1.chat_dura /*chat duration in seconds*/
|
||||
,P1.queue_dura /*queue duration in seconds*/
|
||||
,P1.visitor_id /*visitor livechat id*/
|
||||
,P1.visit_nick /*visitor nick*/
|
||||
,P1.visitor_ip /*visitor ip*/
|
||||
,P1.visitor_email /*visitor email*/
|
||||
,P1.operator_id /*last operator id*/
|
||||
,P1.group_id /*group*/
|
||||
,P1.group_name /*group name*/
|
||||
,P1.rate /*rate*/
|
||||
,P1.last_rate_comment /*last rate comment*/
|
||||
,P1.operator_1_nick /*operator 1 nick*/
|
||||
,P1.operator_2_nick /*operator 2 nick*/
|
||||
,P1.operator_3_nick /*operator 3 nick*/
|
||||
,P1.operator_4_nick /*operator 4 nick*/
|
||||
,P1.conference_id /*conferenceId*/
|
||||
,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_chatrecord_agi_INS P1
|
||||
ON CONFLICT ( conference_id)
|
||||
DO UPDATE SET
|
||||
conference_id=excluded.conference_id
|
||||
,create_date=excluded.create_date
|
||||
,start_date=excluded.start_date
|
||||
,start_url=excluded.start_url
|
||||
,referrer=excluded.referrer
|
||||
,chat_dura=excluded.chat_dura
|
||||
,queue_dura=excluded.queue_dura
|
||||
,visitor_id=excluded.visitor_id
|
||||
,visit_nick=excluded.visit_nick
|
||||
,visitor_ip=excluded.visitor_ip
|
||||
,visitor_email=excluded.visitor_email
|
||||
,operator_id=excluded.operator_id
|
||||
,group_id=excluded.group_id
|
||||
,group_name=excluded.group_name
|
||||
,rate=excluded.rate
|
||||
,last_rate_comment=excluded.last_rate_comment
|
||||
,operator_1_nick=excluded.operator_1_nick
|
||||
,operator_2_nick=excluded.operator_2_nick
|
||||
,operator_3_nick=excluded.operator_3_nick
|
||||
,operator_4_nick=excluded.operator_4_nick
|
||||
,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
|
||||
|
Loading…
Reference in New Issue