Commit 97702c79 authored by yindanlei's avatar yindanlei

add yeji_day report codes

parent 6d10d2e0
yeji_day=业绩基础数据 yeji_day=分机构转化数据
\ No newline at end of file \ No newline at end of file
--*************************************************************** --***************************************************************
--*脚本名称: --*脚本名称:
--*功能: 业绩基础数据 --*功能: 分机构转化数据
--*业务名称: pm --*业务名称: pm
--*输入数据: --*输入数据:
--*作者: yindanlei@igengmei.com --*作者: yindanlei@igengmei.com
...@@ -17,25 +17,29 @@ USE pm; ...@@ -17,25 +17,29 @@ USE pm;
CREATE TABLE IF NOT EXISTS pm.tl_pm_yeji_d CREATE TABLE IF NOT EXISTS pm.tl_pm_yeji_d
( (
data string comment '{"chs_name":"日期","description":"","etl":"","value":"","remark":""}', data string comment '{"chs_name":"日期","description":"","etl":"","value":"","remark":""}',
merchant_name string comment '{"chs_name":"商户名称","description":"","etl":"","value":"","remark":""}', hospital_name string comment '{"chs_name":"机构名称","description":"","etl":"","value":"","remark":""}',
business_group_name string comment '{"chs_name":"商务组","description":"","etl":"","value":"","remark":""}', hospital_id string comment '{"chs_name":"机构id","description":"","etl":"","value":"","remark":""}',
business_partener_name string comment '{"chs_name":"商务名称","description":"","etl":"","value":"","remark":""}',
city_name string comment '{"chs_name":"城市","description":"","etl":"","value":"","remark":""}', city_name string comment '{"chs_name":"城市","description":"","etl":"","value":"","remark":""}',
hexin_exp_pv BIGINT comment '{"chs_name":"核心卡片曝光pv","description":"","etl":"","value":"","remark":""}',
service_exp_pv BIGINT comment '{"chs_name":"商品卡片曝光pv","description":"","etl":"","value":"","remark":""}',
doc_hos_exp_pv BIGINT comment '{"chs_name":"医生医院卡片曝光pv","description":"","etl":"","value":"","remark":""}',
hexin_pv BIGINT comment '{"chs_name":"核心页pv","description":"","etl":"","value":"","remark":""}', hexin_pv BIGINT comment '{"chs_name":"核心页pv","description":"","etl":"","value":"","remark":""}',
service_pv BIGINT comment '{"chs_name":"美购页pv","description":"","etl":"","value":"","remark":""}', service_page_pv BIGINT comment '{"chs_name":"商详页pv","description":"","etl":"","value":"","remark":""}',
doc_hos_page_pv BIGINT comment '{"chs_name":"医生医院页pv","description":"","etl":"","value":"","remark":""}',
click_pv BIGINT comment '{"chs_name":"线索点击人次","description":"","etl":"","value":"","remark":""}',
clue_num BIGINT comment '{"chs_name":"有效线索人次","description":"","etl":"","value":"","remark":""}', clue_num BIGINT comment '{"chs_name":"有效线索人次","description":"","etl":"","value":"","remark":""}',
discount BIGINT comment '{"chs_name":"总验证抽成","description":"","etl":"","value":"","remark":""}', ord_num BIGINT comment '{"chs_name":"验证人次","description":"","etl":"","value":"","remark":""}',
service_price BIGINT comment '{"chs_name":"纯用户支付gmv","description":"","etl":"","value":"","remark":""}',
discount BIGINT comment '{"chs_name":"佣金","description":"","etl":"","value":"","remark":""}',
recharge_amount BIGINT comment '{"chs_name":"广告收款","description":"","etl":"","value":"","remark":""}', recharge_amount BIGINT comment '{"chs_name":"广告收款","description":"","etl":"","value":"","remark":""}',
chongzhi_amount BIGINT comment '{"chs_name":"广告消耗","description":"","etl":"","value":"","remark":""}', chongzhi_amount BIGINT comment '{"chs_name":"广告消耗","description":"","etl":"","value":"","remark":""}',
all_amount BIGINT comment '{"chs_name":"广告总消耗(含返点)","description":"","etl":"","value":"","remark":""}', all_amount BIGINT comment '{"chs_name":"广告总消耗(含返点)","description":"","etl":"","value":"","remark":""}',
cpc_amount BIGINT comment '{"chs_name":"cpc总消耗","description":"","etl":"","value":"","remark":""}', cpc_amount BIGINT comment '{"chs_name":"cpc总消耗","description":"","etl":"","value":"","remark":""}',
cpc_chongzhi_amount BIGINT comment '{"chs_name":"cpc充值消耗","description":"","etl":"","value":"","remark":""}', cpc_chongzhi_amount BIGINT comment '{"chs_name":"cpc充值消耗","description":"","etl":"","value":"","remark":""}',
budget BIGINT comment '{"chs_name":"cpc商品有效预算","description":"","etl":"","value":"","remark":""}',
cpc_click_num BIGINT comment '{"chs_name":"cpc点击数","description":"","etl":"","value":"","remark":""}', cpc_click_num BIGINT comment '{"chs_name":"cpc点击数","description":"","etl":"","value":"","remark":""}',
liulan_amount BIGINT comment '{"chs_name":"浏览收入","description":"","etl":"","value":"","remark":""}', liulan_amount BIGINT comment '{"chs_name":"浏览收入","description":"","etl":"","value":"","remark":""}',
sixin_amount BIGINT comment '{"chs_name":"私信收入","description":"","etl":"","value":"","remark":""}', sixin_amount BIGINT comment '{"chs_name":"私信收入","description":"","etl":"","value":"","remark":""}',
service_price BIGINT comment '{"chs_name":"纯用户支付金额","description":"","etl":"","value":"","remark":""}' )comment '分机构转化数据'
)comment '业绩基础数据'
PARTITIONED BY (PARTITION_DAY STRING comment '分区日期') PARTITIONED BY (PARTITION_DAY STRING comment '分区日期')
ROW FORMAT DELIMITED ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t' FIELDS TERMINATED BY '\t'
......
...@@ -30,23 +30,49 @@ SELECT nvl(nvl(nvl(nvl(t1.partition_date,t2.DATA_DAY),t3.DATA_MONTH),t4.PAY_MONT ...@@ -30,23 +30,49 @@ SELECT nvl(nvl(nvl(nvl(t1.partition_date,t2.DATA_DAY),t3.DATA_MONTH),t4.PAY_MONT
,nvl(sixin_amount,0) as sixin_amount ,nvl(sixin_amount,0) as sixin_amount
,nvl(service_price,0) as service_price ,nvl(service_price,0) as service_price
SELECT nvl(nvl(nvl(nvl(nvl(nvl(t1.partition_date,t2.partition_date),t3.partition_date),t4.partition_date),t5.partition_date),t6.partition_date),t7.partition_date) as data
,nvl(nvl(nvl(nvl(nvl(nvl(t1.hospital_name,t2.hospital_name),t3.hospital_name),t4.hospital_name),t5.hospital_name),t6.hospital_name),t7.hospital_name) as hospital_name
,nvl(nvl(nvl(nvl(nvl(nvl(t1.hospital_id,t2.hospital_id),t3.hospital_id),t4.hospital_id),t5.hospital_id),t6.hospital_id),t7.hospital_id) as hospital_id
,nvl(nvl(nvl(nvl(nvl(nvl(t1.city_name,t2.city_name),t3.city_name),t4.city_name),t5.city_name),t6.city_name),t7.city_name) as city_name
--,nvl(nvl(nvl(nvl(t1.business_group_name,t2.business_group_name),t3.business_group_name),t4.business_group_name),t5.business_group_name) as `商务组`
,NVL(hexin_exp_pv,0) AS hexin_exp_pv
,nvl(service_exp_pv,0) as service_exp_pv
,nvl(doc_hos_exp_pv,0) as doc_hos_exp_pv
,nvl(hexin_pv,0) as hexin_pv
,nvl(service_page_pv ,0) as service_page_pv
,nvl(doc_hos_page_pv,0) as doc_hos_page_pv
,nvl(click_pv,0) as click_pv
,nvl(clue_num,0) as clue_num
,nvl(ord_num,0) as ord_num
,nvl(service_price,0) as service_price
,nvl(discount,0) as discount
,nvl(recharge_amount,0) as recharge_amount
,nvl(chongzhi_amount,0) as chongzhi_amount
,nvl(all_amount,0) as all_amount
,nvl(cpc_amount,0) as cpc_amount
,nvl(cpc_chongzhi_amount,0) as cpc_chongzhi_amount
,nvl(cpc_click_num,0) as cpc_click_num
,nvl(liulan_amount,0) as liulan_amount
,nvl(sixin_amount,0) as sixin_amount
FROM FROM
---核心、美购页pv ---医生医院、美购页pv
( (
SELECT SELECT
a.partition_date a.partition_date
,merchant_name ,hospital_name
,b.business_group_name ,hospital_id
,b.business_partener_name
,city_name ,city_name
,SUM(doc_hos_pv) as doc_hos_page_pv
,SUM(service_pv) as service_page_pv
,SUM(hexin_pv) as hexin_pv ,SUM(hexin_pv) as hexin_pv
,SUM(service_pv) as service_pv
FROM FROM
( (
SELECT --之前是根据merchant_id算的,有重复,如果按doctor_id值不会重复 SELECT --之前是根据merchant_id算的,有重复,如果按doctor_id值不会重复
partition_date,doctor_id,SUM(pv_num) as hexin_pv,SUM(case when business_type = 'service' then pv_num end) as service_pv partition_date,doctor_id,SUM(case when business_type in ('org','doctor') then pv_num end) as doc_hos_pv,SUM(case when business_type = 'service' then pv_num end) as service_pv,SUM(pv_num) as hexin_pv
FROM online.ml_doctor_event_indic_day FROM online.ml_doctor_event_indic_day
WHERE partition_date=REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_date >= REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND partition_date <=regexp_replace(date_sub(current_date(),1),'-','')
AND merchant_id IS NOT NULL AND merchant_id IS NOT NULL
AND merchant_id <> '' AND merchant_id <> ''
AND business_type IN ('service','org', 'doctor') AND business_type IN ('service','org', 'doctor')
...@@ -59,25 +85,104 @@ FROM ...@@ -59,25 +85,104 @@ FROM
( --商务归属1009更新 ( --商务归属1009更新
--!! 注意:这里的日期变量设置为当前日期的前一天,定时任务为每月第一天,故查询的为上月最后一天的归属 --!! 注意:这里的日期变量设置为当前日期的前一天,定时任务为每月第一天,故查询的为上月最后一天的归属
SELECT SELECT
doctor_id,merchant_name,business_group_name,business_partener_name,city_name doctor_id,city_name,hospital_id,hospital_name
FROM FROM
online.ml_doctor_relation_dimen_day online.ml_doctor_relation_dimen_day
WHERE partition_date =REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_date =regexp_replace(date_sub(current_date(),1),'-','')
GROUP BY doctor_id,merchant_name,business_group_name,business_partener_name,city_name AND hospital_is_online='true'
GROUP BY doctor_id,city_name,hospital_id,hospital_name
)b )b
ON a.doctor_id=b.doctor_id ON a.doctor_id=b.doctor_id
GROUP BY a.partition_date GROUP BY a.partition_date
,merchant_name ,hospital_name
,b.business_group_name ,hospital_id
,b.business_partener_name
,city_name ,city_name
)t1 )t1
FULL JOIN ---医生医院、美购页曝光
(
SELECT
a.partition_date
,hospital_name
,hospital_id
,city_name
,SUM(CASE WHEN type='service' THEN exp_pv END) as service_exp_pv
,SUM(CASE WHEN type<>'service' THEN exp_pv END) as doc_hos_exp_pv
,SUM(exp_pv) as hexin_exp_pv
FROM
(
SELECT partition_date,doctor_id,SUM(pv_num) as exp_pv,'service' as type
FROM online.ml_doctor_event_indic_day
WHERE partition_date >= REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND partition_date <=regexp_replace(date_sub(current_date(),1),'-','')
AND merchant_id IS NOT NULL
AND merchant_id <> ''
AND business_type ='service'
AND data_type = 'native_exposure'
AND cl_id <> ''
AND cl_id <> '0'
GROUP BY partition_date,doctor_id,'service'
UNION ALL
SELECT partition_date,card_id as doctor_id,count(1) as exp_pv,'doc_hos'as type
FROM online.ml_community_precise_exposure_detail
WHERE partition_date >= REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND partition_date <=regexp_replace(date_sub(current_date(),1),'-','')
AND card_content_type = 'doctor'
AND card_id <>''
AND cl_id <> ''
AND cl_id <> '0'
GROUP BY partition_date,card_id,'doc_hos'
UNION ALL
SELECT partition_date,doctor_id,SUM(exp_pv) as exp_pv,'doc_hos'as type
FROM
(
SELECT partition_date,card_id as hospital_id,count(1) as exp_pv
FROM online.ml_community_precise_exposure_detail
WHERE partition_date >= REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND partition_date <=regexp_replace(date_sub(current_date(),1),'-','')
AND card_content_type = 'hospital'
AND card_id <>''
AND cl_id <> ''
AND cl_id <> '0'
GROUP BY partition_date,card_id
)a
LEFT JOIN
(
SELECT id AS doctor_id,hospital_id
FROM online.tl_hdfs_doctor_view
WHERE partition_date = regexp_replace(date_sub(current_date(),1),'-','')
AND doctor_type = '1'
)b
ON a.hospital_id=b.hospital_id
GROUP BY partition_date,doctor_id,'doc_hos'
)a
LEFT JOIN
( --商务归属1009更新
--!! 注意:这里的日期变量设置为当前日期的前一天,定时任务为每月第一天,故查询的为上月最后一天的归属
SELECT
doctor_id,city_name,hospital_name,hospital_id
FROM
online.ml_doctor_relation_dimen_day
WHERE partition_date =regexp_replace(date_sub(current_date(),1),'-','')
AND hospital_is_online='true'
GROUP BY doctor_id,city_name,hospital_name,hospital_id
)b
ON a.doctor_id=b.doctor_id
GROUP BY a.partition_date
,hospital_name
,hospital_id
,city_name
)t2
ON t1.partition_date=t2.partition_date AND t1.hospital_name=t2.hospital_name
AND t1.hospital_id=t2.hospital_id AND t1.city_name=t2.city_name
FULL JOIN FULL JOIN
( (
SELECT DATA_DAY SELECT DATA_DAY as partition_date
,merchant_name ,hospital_name
,b.business_group_name ,hospital_id
,b.business_partener_name
,city_name ,city_name
,SUM(clue_num) as clue_num ,SUM(clue_num) as clue_num
FROM FROM
...@@ -112,7 +217,8 @@ FULL JOIN ...@@ -112,7 +217,8 @@ FULL JOIN
,1 AS consult_num ,1 AS consult_num
FROM ml.ML_C_ET_MSG_CONVERSATION_DIMEN_INC_D FROM ml.ML_C_ET_MSG_CONVERSATION_DIMEN_INC_D
WHERE WHERE
partition_day =REGEXP_REPLACE(date_sub(current_date(),1),'-','') partition_day >=REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND partition_day <= regexp_replace(date_sub(current_date(),1),'-','')
AND is_valid='true' AND is_valid='true'
AND merchant_id IS NOT NULL AND merchant_id IS NOT NULL
GROUP BY user_id,merchant_id,substr(partition_day,1,6) GROUP BY user_id,merchant_id,substr(partition_day,1,6)
...@@ -127,8 +233,9 @@ FULL JOIN ...@@ -127,8 +233,9 @@ FULL JOIN
1 AS PAY_NUM 1 AS PAY_NUM
FROM ONLINE.ML_TRADE_ORDER_DETAIL_DAY T FROM ONLINE.ML_TRADE_ORDER_DETAIL_DAY T
WHERE WHERE
T.PARTITION_DATE = REGEXP_REPLACE(date_sub(current_date(),1),'-','') T.PARTITION_DATE = regexp_replace(date_sub(current_date(),1),'-','')
AND regexp_replace(substr(T.PAY_DATE,1,10),'-','') =REGEXP_REPLACE(date_sub(current_date(),1),'-','') AND regexp_replace(substr(T.PAY_DATE,1,10),'-','') >=REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND regexp_replace(substr(T.PAY_DATE,1,10),'-','') <= regexp_replace(date_sub(current_date(),1),'-','')
AND T.is_pure_user='true' AND T.is_pure_user='true'
GROUP BY T.USER_ID,T.merchant_id,regexp_replace(SUBSTR(T.PAY_DATE,1,7),'-','') GROUP BY T.USER_ID,T.merchant_id,regexp_replace(SUBSTR(T.PAY_DATE,1,7),'-','')
) T4 ) T4
...@@ -146,7 +253,8 @@ FULL JOIN ...@@ -146,7 +253,8 @@ FULL JOIN
SELECT sub_id,REGEXP_REPLACE(SUBSTR(call_time,0,10), '-', '') as partition_date SELECT sub_id,REGEXP_REPLACE(SUBSTR(call_time,0,10), '-', '') as partition_date
FROM tl.tl_gm_sl_ali_virtual_phone_call_detail --通话记录表,call_type呼叫类型 FROM tl.tl_gm_sl_ali_virtual_phone_call_detail --通话记录表,call_type呼叫类型
WHERE partition_day=regexp_replace(date_sub(current_date(),1),'-','') WHERE partition_day=regexp_replace(date_sub(current_date(),1),'-','')
AND REGEXP_REPLACE(SUBSTR(call_time,0,10), '-', '')=REGEXP_REPLACE(date_sub(current_date(),1),'-','') AND REGEXP_REPLACE(SUBSTR(call_time,0,10), '-', '')>=REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND REGEXP_REPLACE(SUBSTR(call_time,0,10), '-', '')<=regexp_replace(date_sub(current_date(),1),'-','')
--AND start_time+ interval 30 second <= release_time --通话时长大于30秒 --AND start_time+ interval 30 second <= release_time --通话时长大于30秒
AND release_time>start_time AND release_time>start_time
)a )a
...@@ -154,28 +262,28 @@ FULL JOIN ...@@ -154,28 +262,28 @@ FULL JOIN
( (
SELECT id,sub_id SELECT id,sub_id
FROM tl.tl_gm_sl_ali_virtual_phone_binding --阿里记录表 FROM tl.tl_gm_sl_ali_virtual_phone_binding --阿里记录表
WHERE partition_day=REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_day=regexp_replace(date_sub(current_date(),1),'-','')
)b )b
ON a.sub_id = b.sub_id ON a.sub_id = b.sub_id
LEFT JOIN LEFT JOIN
( (
SELECT id,platform_binding_id SELECT id,platform_binding_id
FROM tl.tl_gm_sl_virtual_phone_binding FROM tl.tl_gm_sl_virtual_phone_binding
WHERE partition_day=REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_day=regexp_replace(date_sub(current_date(),1),'-','')
)c )c
ON b.id = c.platform_binding_id ON b.id = c.platform_binding_id
LEFT JOIN LEFT JOIN
( (
SELECT phone_binding_id,lead_task_id SELECT phone_binding_id,lead_task_id
FROM tl.tl_gm_sl_lead_task_phone_binding FROM tl.tl_gm_sl_lead_task_phone_binding
WHERE partition_day=REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_day=regexp_replace(date_sub(current_date(),1),'-','')
)d )d
ON c.id = d.phone_binding_id ON c.id = d.phone_binding_id
JOIN JOIN
( (
SELECT id,user_id,merchant_id SELECT id,user_id,merchant_id
FROM tl.tl_gm_sl_lead_task --线索任务表(用户点击授权后记入该表) FROM tl.tl_gm_sl_lead_task --线索任务表(用户点击授权后记入该表)
WHERE partition_day=REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_day=regexp_replace(date_sub(current_date(),1),'-','')
AND source='2' --用户行为电话授权 AND source='2' --用户行为电话授权
AND (USER_ID is NOT NULL or USER_ID <>'') AND (USER_ID is NOT NULL or USER_ID <>'')
)e )e
...@@ -191,30 +299,167 @@ FULL JOIN ...@@ -191,30 +299,167 @@ FULL JOIN
( --商务归属1009更新 ( --商务归属1009更新
--!! 注意:这里的日期变量设置为当前日期的前一天,定时任务为每月第一天,故查询的为上月最后一天的归属 --!! 注意:这里的日期变量设置为当前日期的前一天,定时任务为每月第一天,故查询的为上月最后一天的归属
SELECT SELECT
merchant_id,merchant_name,business_group_name,business_partener_name,city_name merchant_id,city_name,hospital_name,hospital_id
FROM FROM
online.ml_doctor_relation_dimen_day online.ml_doctor_relation_dimen_day
WHERE partition_date =REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_date =regexp_replace(date_sub(current_date(),1),'-','')
and doctor_is_merchant='true' AND doctor_is_merchant='true'
GROUP BY merchant_id,merchant_name,business_group_name,business_partener_name,city_name AND hospital_is_online='true'
GROUP BY merchant_id,city_name,hospital_name,hospital_id
)b )b
ON t3.merchant_id=b.merchant_id ON t3.merchant_id=b.merchant_id
GROUP BY DATA_DAY GROUP BY DATA_DAY
,merchant_name ,hospital_name
,b.business_group_name ,hospital_id
,b.business_partener_name
,city_name ,city_name
)t2 )t3
ON t1.partition_date=t2.DATA_DAY AND t1.merchant_name=t2.merchant_name on nvl(t1.partition_date,t2.partition_date)=t3.partition_date
AND t1.business_group_name=t2.business_group_name AND t1.business_partener_name=t2.business_partener_name and nvl(t1.hospital_name,t2.hospital_name)=t3.hospital_name
AND t1.city_name=t2.city_name AND nvl(t1.hospital_id,t2.hospital_id)=t3.hospital_id
AND nvl(t1.city_name,t2.city_name)=t3.city_name
FULL JOIN FULL JOIN
( --验证人次
SELECT validate_date as partition_date,hospital_name,hospital_id,city_name,SUM(ord_num) as ord_num
FROM
(
SELECT min(REGEXP_REPLACE(SUBSTR(validate_time, 1, 10), '-', '')) as validate_date,merchant_id,user_id,REGEXP_REPLACE(SUBSTR(validate_time, 1, 7), '-', '') as month,'1' as ord_num
FROM online.ml_trade_order_detail_day
WHERE partition_date = regexp_replace(date_sub(current_date(),1),'-','')
AND REGEXP_REPLACE(SUBSTR(validate_time, 1, 10), '-', '') >= REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND REGEXP_REPLACE(SUBSTR(validate_time, 1, 10), '-', '') <= regexp_replace(date_sub(current_date(),1),'-','')
AND is_pure_user = 'true' --取纯用户
GROUP BY merchant_id,user_id,REGEXP_REPLACE(SUBSTR(validate_time, 1, 7), '-', '')
)ord
LEFT JOIN
(
SELECT merchant_id,city_name,hospital_name,hospital_id
FROM online.ml_doctor_relation_dimen_day
WHERE partition_date=regexp_replace(date_sub(current_date(),1),'-','')
AND hospital_is_online='true'
AND doctor_is_merchant='true'
GROUP BY merchant_id,city_name,hospital_name,hospital_id
)doc
on ord.merchant_id = doc.merchant_id
GROUP BY validate_date,hospital_name,hospital_id,city_name
)t4
on nvl(nvl(t1.partition_date,t2.partition_date),t3.partition_date)=t4.partition_date
and nvl(nvl(t1.hospital_name,t2.hospital_name),t3.hospital_name) =t4.hospital_name
AND nvl(nvl(t1.hospital_id,t2.hospital_id),t3.hospital_id)=t4.hospital_id
AND nvl(nvl(t1.city_name,t2.city_name),t3.city_name)=t4.city_name
FULL JOIN ---医生医院、美购页线索点击
( (
SELECT nvl(nvl(t1.month,t2.month),t3.month) as DATA_MONTH SELECT
,nvl(nvl(t1.merchant_name,t2.merchant_name),t3.merchant_name) as merchant_name a.partition_date
,nvl(nvl(t1.business_group_name,t2.business_group_name),t3.business_group_name) as business_group_name ,hospital_name
,nvl(nvl(t1.business_partener_name,t2.business_partener_name),t3.business_partener_name) as business_partener_name ,hospital_id
,city_name
,count(cl_id) as click_pv
FROM
(
SELECT SUBSTR(partition_date,1,6) as month,cl_id,merchant_id,min(partition_date) as partition_date
FROM
(
SELECT partition_date,cl_id,doctor_id,SUM(click_pv) as click_pv --美购页线索点击
FROM
(
SELECT partition_date,cl_id,nvl(params['service_id'],params['business_id']) as service_id,count(1) as click_pv
FROM online.bl_hdfs_maidian_updates
WHERE partition_date>=REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND partition_date<=regexp_replace(date_sub(current_date(),1),'-','')
AND ((action = 'welfare_multiattribute_click_buy' AND page_name = 'welfare_detail')
or action = 'welfare_detail_click_message'
or (action ='on_click_button' AND page_name ='welfare_detail' AND params['popup_name'] in ('consult_reserved','consult_call') AND params['button_name'] in ('message','call','reserved')))
AND cl_id <> ''
AND cl_id <> '0'
AND nvl(params['service_id'],params['business_id']) <>''
GROUP BY partition_date,cl_id,nvl(params['service_id'],params['business_id'])
)a
LEFT JOIN
(
SELECT id,doctor_id
FROM online.tl_meigou_service_view --美购表
where partition_date = regexp_replace(date_sub(current_date(),1),'-','')
)b
ON a.service_id=b.id
GROUP BY partition_date,cl_id,doctor_id
UNION ALL
SELECT partition_date,cl_id,params['business_id'] as doctor_id,count(1) as click_pv
FROM online.bl_hdfs_maidian_updates
WHERE partition_date>=REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND partition_date<=regexp_replace(date_sub(current_date(),1),'-','')
AND ((action ='on_click_button' AND page_name='expert_detail' AND params['button_name'] in ('discount_pay','phone_consult','online_consult','message','call','reserved'))
or action='online_consult')
AND params['business_id'] <>''
AND cl_id <> ''
AND cl_id <> '0'
GROUP BY partition_date,cl_id,params['business_id']
UNION ALL
SELECT partition_date,cl_id,doctor_id,SUM(click_pv) as click_pv
FROM
(
SELECT partition_date,cl_id,params['business_id'] as hospital_id,count(1) as click_pv --医院页线索点击
FROM online.bl_hdfs_maidian_updates
WHERE partition_date>=REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND partition_date<=regexp_replace(date_sub(current_date(),1),'-','')
AND action ='on_click_button' AND page_name='organization_detail' AND params['button_name'] in ('phone_consult','online_consult','message','call','reserved')
AND params['business_id'] <>''
AND cl_id <> ''
AND cl_id <> '0'
GROUP BY partition_date,cl_id,params['business_id']
)a
LEFT JOIN
(
SELECT id AS doctor_id,hospital_id
FROM online.tl_hdfs_doctor_view
WHERE partition_date = regexp_replace(date_sub(current_date(),1),'-','')
AND doctor_type = '1'
)b
ON a.hospital_id=b.hospital_id
GROUP BY partition_date,cl_id,doctor_id
)a
LEFT JOIN
(
SELECT doctor_id,merchant_id
FROM online.ml_doctor_relation_dimen_day
WHERE partition_date =regexp_replace(date_sub(current_date(),1),'-','')
AND merchant_id <>''
GROUP BY doctor_id,merchant_id
)b
ON a.doctor_id=b.doctor_id
GROUP BY SUBSTR(partition_date,1,6),cl_id,merchant_id
)a
LEFT JOIN
( --商务归属1009更新
--!! 注意:这里的日期变量设置为当前日期的前一天,定时任务为每月第一天,故查询的为上月最后一天的归属
SELECT
merchant_id,city_name,hospital_name,hospital_id
FROM
online.ml_doctor_relation_dimen_day
WHERE partition_date =regexp_replace(date_sub(current_date(),1),'-','')
AND doctor_is_merchant='true'
AND hospital_is_online='true'
GROUP BY merchant_id,city_name,hospital_name,hospital_id
)b
ON a.merchant_id=b.merchant_id
GROUP BY a.partition_date
,hospital_name
,hospital_id
,city_name
)t5
on nvl(nvl(nvl(t1.partition_date,t2.partition_date),t3.partition_date),t4.partition_date)=t5.partition_date
and nvl(nvl(nvl(t1.hospital_name,t2.hospital_name),t3.hospital_name),t4.hospital_name)=t5.hospital_name
AND nvl(nvl(nvl(t1.hospital_id,t2.hospital_id),t3.hospital_id),t4.hospital_id)=t5.hospital_id
AND nvl(nvl(nvl(t1.city_name,t2.city_name),t3.city_name),t4.city_name)=t5.city_name
FULL JOIN
(
SELECT nvl(nvl(t1.partition_date,t2.partition_date),t3.partition_date) as partition_date
,nvl(nvl(t1.hospital_name,t2.hospital_name),t3.hospital_name) as hospital_name
,nvl(nvl(t1.hospital_id,t2.hospital_id),t3.hospital_id) as hospital_id
,nvl(nvl(t1.city_name,t2.city_name),t3.city_name) as city_name ,nvl(nvl(t1.city_name,t2.city_name),t3.city_name) as city_name
,nvl(discount,0) as discount ,nvl(discount,0) as discount
,nvl(recharge_amount,0) as recharge_amount ,nvl(recharge_amount,0) as recharge_amount
...@@ -228,75 +473,81 @@ FULL JOIN ...@@ -228,75 +473,81 @@ FULL JOIN
FROM FROM
( (
--佣金(订单验证抽成+一般补单(常规补单+罚款)+买单+剔除转诊关联的订单 --佣金(订单验证抽成+一般补单(常规补单+罚款)+买单+剔除转诊关联的订单
SELECT month,merchant_name,business_group_name,business_partener_name,city_name,SUM(money1) as discount SELECT partition_date,city_name,hospital_id,hospital_name,SUM(money1) as discount
FROM FROM
( (
SELECT SUBSTR(REGEXP_REPLACE(SUBSTR(validate_time, 1, 10), '-', ''),1,8) as month,doctor_id,sum(discount) as money1 SELECT SUBSTR(REGEXP_REPLACE(SUBSTR(validate_time, 1, 10), '-', ''),1,8) as partition_date,doctor_id,sum(discount) as money1
FROM online.ml_trade_order_detail_day --美购交易表 FROM online.ml_trade_order_detail_day --美购交易表
WHERE partition_date = REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_date = regexp_replace(date_sub(current_date(),1),'-','')
AND REGEXP_REPLACE(SUBSTR(validate_time, 1, 10), '-', '') = REGEXP_REPLACE(date_sub(current_date(),1),'-','') AND REGEXP_REPLACE(SUBSTR(validate_time, 1, 10), '-', '') >= REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND REGEXP_REPLACE(SUBSTR(validate_time, 1, 10), '-', '') <= regexp_replace(date_sub(current_date(),1),'-','')
AND status <> '3' --去除已退款 AND status <> '3' --去除已退款
AND is_referral_order ='false' --去除转诊关联的订单 AND is_referral_order ='false' --去除转诊关联的订单
GROUP BY REGEXP_REPLACE(SUBSTR(validate_time, 1, 10), '-', ''),doctor_id GROUP BY REGEXP_REPLACE(SUBSTR(validate_time, 1, 10), '-', ''),doctor_id
UNION ALL UNION ALL
SELECT SUBSTR(REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', ''),1,8) as month,doctor_id,sum(amount) as money1 SELECT SUBSTR(REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', ''),1,8) as partition_date,doctor_id,sum(amount) as money1
FROM online.tl_hdfs_budanluru_view --补单录入表 FROM online.tl_hdfs_budanluru_view --补单录入表
WHERE partition_date = REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_date = '${partition_date}'
AND REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', '') = REGEXP_REPLACE(date_sub(current_date(),1),'-','') AND REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', '') >= REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', '') <= regexp_replace(date_sub(current_date(),1),'-','')
AND status = 0 --已录入 AND status = 0 --已录入
AND type in ('0','2') --常规补单和罚款 AND type in ('0','2') --常规补单和罚款
GROUP BY REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', ''),doctor_id GROUP BY REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', ''),doctor_id
UNION ALL UNION ALL
SELECT SUBSTR(REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', ''),1,8) as month,doctor_id,sum(discount_cent)/100 as money1 SELECT SUBSTR(REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', ''),1,8) as partition_date,doctor_id,sum(discount_cent)/100 as money1
FROM online.tl_maidan_order_view --买单表 FROM online.tl_maidan_order_view --买单表
WHERE partition_date = REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_date = '${partition_date}'
AND REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', '') = REGEXP_REPLACE(date_sub(current_date(),1),'-','') AND REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', '') >= REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', '') <= regexp_replace(date_sub(current_date(),1),'-','')
AND status ='1' AND status ='1'
GROUP BY REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', ''),doctor_id GROUP BY REGEXP_REPLACE(SUBSTR(created_time, 1, 10), '-', ''),doctor_id
)ord )ord
LEFT JOIN LEFT JOIN
( (
SELECT doctor_id,city_name,business_group_name,business_partener_name,merchant_name SELECT doctor_id,city_name,hospital_id,hospital_name
FROM online.ml_doctor_relation_dimen_day FROM online.ml_doctor_relation_dimen_day
WHERE partition_date=REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_date=regexp_replace(date_sub(current_date(),1),'-','')
GROUP BY doctor_id,city_name,business_group_name,business_partener_name,merchant_name AND hospital_is_online='true'
GROUP BY doctor_id,city_name,hospital_id,hospital_name
)doc )doc
on ord.doctor_id = doc.doctor_id on ord.doctor_id = doc.doctor_id
GROUP BY month,merchant_name,business_group_name,business_partener_name,city_name GROUP BY partition_date,city_name,hospital_id,hospital_name
)t1 )t1
FULL JOIN FULL JOIN
( --广告充值 ( --广告充值
SELECT month,merchant_name,business_group_name,business_partener_name,city_name,SUM(recharge_amount) as recharge_amount SELECT partition_date,hospital_name,hospital_id,city_name,SUM(recharge_amount) as recharge_amount
FROM FROM
( (
SELECT SUBSTR(partition_day,1,8) as month,merchant_id,sum(proportion_recharge_amount) as recharge_amount --当天充值金额 SELECT SUBSTR(partition_day,1,8) as partition_date,merchant_id,sum(proportion_recharge_amount) as recharge_amount --当天充值金额
FROM ml.ml_c_ct_mc_merchant_indic_d FROM ml.ml_c_ct_mc_merchant_indic_d
WHERE partition_day = REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_day >=REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND partition_day <= regexp_replace(date_sub(current_date(),1),'-','')
GROUP BY SUBSTR(partition_day,1,8),merchant_id GROUP BY SUBSTR(partition_day,1,8),merchant_id
)gg )gg
LEFT JOIN LEFT JOIN
( (
SELECT merchant_id,city_name,business_group_name,business_partener_name,merchant_name SELECT merchant_id,city_name,hospital_name,hospital_id
FROM online.ml_doctor_relation_dimen_day FROM online.ml_doctor_relation_dimen_day
WHERE partition_date=REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_date=regexp_replace(date_sub(current_date(),1),'-','')
AND doctor_is_merchant = 'true' AND doctor_is_merchant = 'true'
GROUP BY merchant_id,city_name,business_group_name,business_partener_name,merchant_name AND hospital_is_online='true'
GROUP BY merchant_id,city_name,hospital_name,hospital_id
)doc )doc
on gg.merchant_id = doc.merchant_id on gg.merchant_id = doc.merchant_id
GROUP BY month,merchant_name,business_group_name,business_partener_name,city_name GROUP BY partition_date,hospital_id,hospital_name,city_name
)t2 )t2
on t1.month=t2.month AND t1.merchant_name=t2.merchant_name AND t1.business_group_name=t2.business_group_name AND t1.business_partener_name=t2.business_partener_name AND t1.city_name=t2.city_name on t1.partition_date=t2.partition_date AND t1.hospital_id=t2.hospital_id AND t1.hospital_name=t2.hospital_name AND t1.city_name=t2.city_name
FULL JOIN FULL JOIN
(--广告充值消耗(报表口径) (--广告充值消耗(报表口径)
SELECT month,merchant_name,business_group_name,business_partener_name,city_name,SUM(all_amount) as all_amount,SUM(chongzhi_amount) as chongzhi_amount SELECT partition_date,hospital_id,hospital_name,city_name,SUM(all_amount) as all_amount,SUM(chongzhi_amount) as chongzhi_amount
,SUM(cpc_amount) as cpc_amount,SUM(cpc_chongzhi_amount) as cpc_chongzhi_amount,SUM(cpc_click_num) as cpc_click_num,SUM(liulan_amount) as liulan_amount,SUM(sixin_amount) as sixin_amount ,SUM(cpc_amount) as cpc_amount,SUM(cpc_chongzhi_amount) as cpc_chongzhi_amount,SUM(cpc_click_num) as cpc_click_num,SUM(liulan_amount) as liulan_amount,SUM(sixin_amount) as sixin_amount
FROM FROM
( (
SELECT SUBSTR(partition_day,1,8) as month,merchant_id SELECT SUBSTR(partition_day,1,8) as partition_date,merchant_id
,SUM(CASE WHEN advertise_type = 'cpc' AND advertise_calculate_type = 'cpc_flownext' THEN ,SUM(CASE WHEN advertise_type = 'cpc' AND advertise_calculate_type = 'cpc_flownext' THEN
proportion_expend_recharge_amount proportion_expend_recharge_amount
WHEN advertise_type = 'cpt' AND advertise_calculate_type = 'cpt_schedule' THEN WHEN advertise_type = 'cpt' AND advertise_calculate_type = 'cpt_schedule' THEN
...@@ -325,125 +576,69 @@ FULL JOIN ...@@ -325,125 +576,69 @@ FULL JOIN
,SUM(CASE WHEN advertise_type='browse' THEN proportion_expend_recharge_amount END) as liulan_amount --浏览收入(不含返点) ,SUM(CASE WHEN advertise_type='browse' THEN proportion_expend_recharge_amount END) as liulan_amount --浏览收入(不含返点)
,SUM(CASE WHEN advertise_type='message' THEN proportion_expend_recharge_amount END) as sixin_amount --私信收入(不含返点) ,SUM(CASE WHEN advertise_type='message' THEN proportion_expend_recharge_amount END) as sixin_amount --私信收入(不含返点)
from ml.ml_c_ct_mc_merchantadclassify_indic_d from ml.ml_c_ct_mc_merchantadclassify_indic_d
where partition_day=REGEXP_REPLACE(date_sub(current_date(),1),'-','') where partition_day>=REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND partition_day <=regexp_replace(date_sub(current_date(),1),'-','')
group by SUBSTR(partition_day,1,8),merchant_id group by SUBSTR(partition_day,1,8),merchant_id
)gg )gg
LEFT JOIN LEFT JOIN
( (
SELECT merchant_id,city_name,business_group_name,business_partener_name,merchant_name SELECT merchant_id,city_name,hospital_name,hospital_id
FROM online.ml_doctor_relation_dimen_day FROM online.ml_doctor_relation_dimen_day
WHERE partition_date=REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_date=regexp_replace(date_sub(current_date(),1),'-','')
AND doctor_is_merchant = 'true' AND doctor_is_merchant = 'true'
GROUP BY merchant_id,city_name,business_group_name,business_partener_name,merchant_name AND hospital_is_online='true'
GROUP BY merchant_id,city_name,hospital_name,hospital_id
)doc )doc
on gg.merchant_id = doc.merchant_id on gg.merchant_id = doc.merchant_id
GROUP BY month,merchant_name,business_group_name,business_partener_name,city_name GROUP BY partition_date,hospital_id,hospital_name,city_name
)t3 )t3
on nvl(t1.month,t2.month)=t3.month on nvl(t1.partition_date,t2.partition_date)=t3.partition_date
and nvl(t1.merchant_name,t2.merchant_name)=t3.merchant_name and nvl(t1.hospital_id,t2.hospital_id)=t3.hospital_id
AND nvl(t1.business_group_name,t2.business_group_name)=t3.business_group_name AND nvl(t1.hospital_name,t2.hospital_name)=t3.hospital_name
AND nvl(t1.business_partener_name,t2.business_partener_name)=t3.business_partener_name
AND nvl(t1.city_name,t2.city_name)=t3.city_name
)t3
on nvl(t1.partition_date,t2.DATA_DAY)=t3.DATA_MONTH
and nvl(t1.merchant_name,t2.merchant_name)=t3.merchant_name
AND nvl(t1.business_group_name,t2.business_group_name)=t3.business_group_name
AND nvl(t1.business_partener_name,t2.business_partener_name)=t3.business_partener_name
AND nvl(t1.city_name,t2.city_name)=t3.city_name AND nvl(t1.city_name,t2.city_name)=t3.city_name
)t6
on nvl(nvl(nvl(nvl(t1.partition_date,t2.partition_date),t3.partition_date),t4.partition_date),t5.partition_date)=t6.partition_date
and nvl(nvl(nvl(nvl(t1.hospital_name,t2.hospital_name),t3.hospital_name),t4.hospital_name),t5.hospital_name)=t6.hospital_name
AND nvl(nvl(nvl(nvl(t1.hospital_id,t2.hospital_id),t3.hospital_id),t4.hospital_id),t5.hospital_id)=t6.hospital_id
AND nvl(nvl(nvl(nvl(t1.city_name,t2.city_name),t3.city_name),t4.city_name),t5.city_name)=t6.city_name
FULL JOIN FULL JOIN
( ( --纯用户支付gmv
SELECT SUBSTR(pay_date, 1, 8) as PAY_MONTH,merchant_name,business_group_name,business_partener_name,city_name,SUM(service_price) as service_price SELECT pay_date as partition_date,hospital_name,hospital_id,city_name,SUM(service_price) as service_price
FROM FROM
( (
SELECT REGEXP_REPLACE(SUBSTR(pay_time, 1, 10), '-', '') as pay_date,doctor_id,sum(service_price) as service_price SELECT REGEXP_REPLACE(SUBSTR(pay_time, 1, 10), '-', '') as pay_date,doctor_id,sum(service_price) as service_price
FROM online.ml_trade_order_detail_day --美购交易表(梦雨新做) FROM online.ml_trade_order_detail_day
WHERE partition_date = REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_date =regexp_replace(date_sub(current_date(),1),'-','')
AND REGEXP_REPLACE(SUBSTR(pay_time, 1, 10), '-', '') = REGEXP_REPLACE(date_sub(current_date(),1),'-','') AND REGEXP_REPLACE(SUBSTR(pay_time, 1, 10), '-', '') >= REGEXP_REPLACE(trunc(date_sub(current_date(),8),'MM'),'-','')
AND REGEXP_REPLACE(SUBSTR(pay_time, 1, 10), '-', '') <= regexp_replace(date_sub(current_date(),1),'-','')
AND is_pure_user = 'true' --取纯用户 AND is_pure_user = 'true' --取纯用户
GROUP BY REGEXP_REPLACE(SUBSTR(pay_time, 1, 10), '-', ''),doctor_id GROUP BY REGEXP_REPLACE(SUBSTR(pay_time, 1, 10), '-', ''),doctor_id
)ord )ord
LEFT JOIN LEFT JOIN
( (
SELECT doctor_id,city_name,business_group_name,business_partener_name,merchant_name SELECT doctor_id,city_name,hospital_name,hospital_id
FROM online.ml_doctor_relation_dimen_day FROM online.ml_doctor_relation_dimen_day
WHERE partition_date=REGEXP_REPLACE(date_sub(current_date(),1),'-','') WHERE partition_date=regexp_replace(date_sub(current_date(),1),'-','')
GROUP BY doctor_id,city_name,business_group_name,business_partener_name,merchant_name AND hospital_is_online='true'
GROUP BY doctor_id,city_name,hospital_name,hospital_id
)doc )doc
on ord.doctor_id = doc.doctor_id on ord.doctor_id = doc.doctor_id
GROUP BY SUBSTR(pay_date, 1, 8),merchant_name,business_group_name,business_partener_name,city_name GROUP BY pay_date,hospital_name,hospital_id,city_name
)t4 )t7
on nvl(nvl(t1.partition_date,t2.DATA_DAY),t3.DATA_MONTH)=t4.PAY_MONTH on nvl(nvl(nvl(nvl(nvl(t1.partition_date,t2.partition_date),t3.partition_date),t4.partition_date),t5.partition_date),t6.partition_date)=t7.partition_date
and nvl(nvl(t1.merchant_name,t2.merchant_name),t3.merchant_name) =t4.merchant_name and nvl(nvl(nvl(nvl(nvl(t1.hospital_name,t2.hospital_name),t3.hospital_name),t4.hospital_name),t5.hospital_name),t6.hospital_name)=t7.hospital_name
AND nvl(nvl(t1.business_group_name,t2.business_group_name),t3.business_group_name)=t4.business_group_name AND nvl(nvl(nvl(nvl(nvl(t1.hospital_id,t2.hospital_id),t3.hospital_id),t4.hospital_id),t5.hospital_id),t6.hospital_id)=t7.hospital_id
AND nvl(nvl(t1.business_partener_name,t2.business_partener_name),t3.business_partener_name)=t4.business_partener_name AND nvl(nvl(nvl(nvl(nvl(t1.city_name,t2.city_name),t3.city_name),t4.city_name),t5.city_name),t6.city_name)=t7.city_name
AND nvl(nvl(t1.city_name,t2.city_name),t3.city_name)=t4.city_name order by data desc
FULL JOIN
(
SELECT SUBSTR(day_id, 1, 8) as day_month,merchant_name,business_group_name,business_partener_name,city_name,SUM(budget) as budget
FROM
(
SELECT T1.day_id,T1.merchant_doctor_id,case when merchant_budget>=tot_service_budget then tot_service_budget else merchant_budget end as budget
FROM
(
SELECT
clicklog.create_time AS day_id
,clicklog.merchant_doctor_id
,max(merchant_budget) as merchant_budget --商户预算
FROM
(
SELECT id,promote_id,price,service_budget,merchant_budget,merchant_doctor_id,regexp_replace(substr(create_time,1,10),'-','') as create_time,recharge
FROM online.tl_hdfs_cpc_clicklog_view
WHERE partition_date=REGEXP_REPLACE(date_sub(current_date(),1),'-','')
AND regexp_replace(substr(create_time,1,10),'-','')= REGEXP_REPLACE(date_sub(current_date(),1),'-','')
)clicklog
group by clicklog.create_time,clicklog.merchant_doctor_id
)T1
LEFT JOIN
(
SELECT
day_id
,merchant_doctor_id
,sum(service_budget) as tot_service_budget
FROM
(
SELECT
clicklog.create_time AS day_id
,clicklog.merchant_doctor_id,clicklog.service_id
,max(service_budget) as service_budget
FROM
(
SELECT id,promote_id,price,service_budget,merchant_budget,merchant_doctor_id,service_id,regexp_replace(substr(create_time,1,10),'-','') as create_time
FROM online.tl_hdfs_cpc_clicklog_view
WHERE partition_date=REGEXP_REPLACE(date_sub(current_date(),1),'-','')
AND regexp_replace(substr(create_time,1,10),'-','')= REGEXP_REPLACE(date_sub(current_date(),1),'-','')
)clicklog
GROUP BY clicklog.create_time,clicklog.merchant_doctor_id,clicklog.service_id
)service_budget
GROUP BY day_id,merchant_doctor_id
)T2
ON T1.day_id=T2.day_id
AND T1.merchant_doctor_id=T2.merchant_doctor_id
)ord
LEFT JOIN
(
SELECT merchant_doctor_id,merchant_name,business_group_name,business_partener_name,city_name
FROM online.ml_doctor_relation_dimen_day
WHERE partition_date=REGEXP_REPLACE(date_sub(current_date(),1),'-','')
AND doctor_is_merchant='true'
group by merchant_doctor_id,merchant_name,business_group_name,business_partener_name,city_name
)doc
on ord.merchant_doctor_id = doc.merchant_doctor_id
GROUP BY SUBSTR(day_id, 1, 8),merchant_name,business_group_name,business_partener_name,city_name
)t5
on nvl(nvl(nvl(t1.partition_date,t2.DATA_DAY),t3.DATA_MONTH),t4.PAY_MONTH)=t5.day_month
and nvl(nvl(nvl(t1.merchant_name,t2.merchant_name),t3.merchant_name),t4.merchant_name)=t5.merchant_name
AND nvl(nvl(nvl(t1.business_group_name,t2.business_group_name),t3.business_group_name),t4.business_group_name)=t5.business_group_name
AND nvl(nvl(nvl(t1.business_partener_name,t2.business_partener_name),t3.business_partener_name),t4.business_partener_name)=t5.business_partener_name
AND nvl(nvl(nvl(t1.city_name,t2.city_name),t3.city_name),t4.city_name)=t5.city_name
order by data desc
......
#step1_10.job #step1_10.job
type=command type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive online tl_hdfs_budanluru_view command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive tl tl_gm_sl_lead_task
\ No newline at end of file \ No newline at end of file
#step1_11.job #step1_11.job
type=command type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive online tl_maidan_order_view command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive online bl_hdfs_maidian_updates
\ No newline at end of file \ No newline at end of file
#step1_12.job #step1_12.job
type=command type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive ml ml_c_ct_mc_merchant_indic_d command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive online tl_meigou_service_view
\ No newline at end of file \ No newline at end of file
#step1_13.job #step1_13.job
type=command type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive ml ml_c_ct_mc_merchantadclassify_indic_d command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive online tl_hdfs_budanluru_view
\ No newline at end of file \ No newline at end of file
#step1_14.job #step1_14.job
type=command type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive online tl_hdfs_cpc_clicklog_view command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive online tl_maidan_order_view
\ No newline at end of file \ No newline at end of file
#step1_14.job
type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive ml ml_c_ct_mc_merchant_indic_d
\ No newline at end of file
#step1_14.job
type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive ml ml_c_ct_mc_merchantadclassify_indic_d
\ No newline at end of file
#step1_3.job #step1_3.job
type=command type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive ml ML_C_ET_MSG_CONVERSATION_DIMEN_INC_D command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive online ml_community_precise_exposure_detail
\ No newline at end of file \ No newline at end of file
#step1_4.job #step1_4.job
type=command type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive online ML_TRADE_ORDER_DETAIL_DAY command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive online tl_hdfs_doctor_view
\ No newline at end of file \ No newline at end of file
#step1_5.job #step1_5.job
type=command type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive tl tl_gm_sl_ali_virtual_phone_call_detail command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive ml ML_C_ET_MSG_CONVERSATION_DIMEN_INC_D
\ No newline at end of file \ No newline at end of file
#step1_6.job #step1_6.job
type=command type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive tl tl_gm_sl_ali_virtual_phone_binding command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive online ML_TRADE_ORDER_DETAIL_DAY
\ No newline at end of file \ No newline at end of file
#step1_7.job #step1_7.job
type=command type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive tl tl_gm_sl_virtual_phone_binding command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive tl tl_gm_sl_ali_virtual_phone_call_detail
\ No newline at end of file \ No newline at end of file
#step1_8.job #step1_8.job
type=command type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive tl tl_gm_sl_lead_task_phone_binding command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive tl tl_gm_sl_ali_virtual_phone_binding
\ No newline at end of file \ No newline at end of file
#step1_9.job #step1_9.job
type=command type=command
command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive tl tl_gm_sl_lead_task command=sh /home/bi/bi-report/lib/shell/waitsuccess.sh hive tl tl_gm_sl_lead_task_phone_binding
\ No newline at end of file \ No newline at end of file
#step2.job #step2.job
type=command type=command
dependencies=step1_1,step1_2,step1_3,step1_4,step1_5,step1_6,step1_7,step1_8,step1_9,step1_10,step1_11,step1_12,step1_13,step1_14 dependencies=step1_1,step1_2,step1_3,step1_4,step1_5,step1_6,step1_7,step1_8,step1_9,step1_10,step1_11,step1_12,step1_13,step1_14,step1_15,step1_16
command=sh /home/bi/bi-report/lib/shell/hive yeji_day command=sh /home/bi/bi-report/lib/shell/hive yeji_day
\ No newline at end of file
#step3.job #step3.job
type=command type=command
dependencies=step2 dependencies=step2
command=curl -X GET http://localhost:8553/api/report/email/yeji_day/jiaweijie@igengmei.com/zhanghaoyu@igengmei.com,cp-sunyinghe@igengmei.com,yindanlei@igengmei.com command=curl -X GET http://localhost:8553/api/report/email/yeji_day/jiaweijie@igengmei.com/cp-sunyinghe@igengmei.com,yindanlei@igengmei.com
\ No newline at end of file \ No newline at end of file
...@@ -2,23 +2,27 @@ ...@@ -2,23 +2,27 @@
SELECT SELECT
data AS `日期` data AS `日期`
,merchant_name AS `商户名称` ,hospital_name AS `机构名称`
,business_group_name AS `商务组` ,hospital_id AS `机构id`
,business_partener_name AS `商务名称`
,city_name AS `城市` ,city_name AS `城市`
,hexin_exp_pv AS `核心卡片曝光pv`
,service_exp_pv AS `商品卡片曝光pv`
,doc_hos_exp_pv AS `医生医院卡片曝光pv`
,hexin_pv AS `核心页pv` ,hexin_pv AS `核心页pv`
,service_pv AS `美购页pv` ,service_page_pv AS `商详页pv`
,doc_hos_page_pv AS `医生医院页pv`
,click_pv AS `线索点击人次`
,clue_num AS `有效线索人次` ,clue_num AS `有效线索人次`
,discount AS `总验证抽成` ,ord_num AS `验证人次`
,service_price AS `纯用户支付gmv`
,discount AS `佣金`
,recharge_amount AS `广告收款` ,recharge_amount AS `广告收款`
,chongzhi_amount AS `广告消耗` ,chongzhi_amount AS `广告消耗`
,all_amount AS `广告总消耗(含返点)` ,all_amount AS `广告总消耗(含返点)`
,cpc_amount AS `cpc总消耗` ,cpc_amount AS `cpc总消耗`
,cpc_chongzhi_amount AS `cpc充值消耗` ,cpc_chongzhi_amount AS `cpc充值消耗`
,budget AS `cpc商品有效预算`
,cpc_click_num AS `cpc点击数` ,cpc_click_num AS `cpc点击数`
,liulan_amount AS `浏览收入` ,liulan_amount AS `浏览收入`
,sixin_amount AS `私信收入` ,sixin_amount AS `私信收入`
,service_price AS `纯用户支付金额`
FROM pm.tl_pm_yeji_d FROM pm.tl_pm_yeji_d
where partition_day=regexp_replace(DATE_SUB(current_date,1) ,'-','') where partition_day=regexp_replace(DATE_SUB(current_date,1) ,'-','')
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment