Commit a4058bd6 authored by litaolemo's avatar litaolemo

update

parent aa619a16
...@@ -114,41 +114,7 @@ for t in range(1, task_days): ...@@ -114,41 +114,7 @@ for t in range(1, task_days):
,'search_result_wiki','search_result_question_answer') ,'search_result_wiki','search_result_question_answer')
AND card_content_type IN ('user_post') AND card_content_type IN ('user_post')
)a )a
group by partition_day,card_content_type,device_id left join
)t1
LEFT JOIN
(--搜索结果页卡片点击
SELECT cl_id,partition_date
,sum(CASE WHEN card_content_type='service' THEN click_pv END) as service_click_pv
,sum(CASE WHEN card_content_type='neirong' THEN click_pv END) as neirong_click_pv
FROM
(
SELECT partition_date,cl_id,'service' as card_content_type,count(1) as click_pv
FROM online.bl_hdfs_maidian_updates
WHERE partition_date >= '{partition_day}'
AND partition_date < '{end_date}'
AND ((action in ('search_result_click_recommend_item','search_result_welfare_click_item')
AND page_name in ('search_result_more','search_result_welfare'))
or (action = 'goto_welfare_detail' AND params ['from'] = 'search_result_welfare_recommend')
or (action = 'on_click_card' AND params['card_content_type'] in ('service') AND page_name in ('search_result_more','search_result_welfare')))
GROUP BY partition_date,cl_id,'service'
UNION ALL
SELECT partition_date,cl_id,'neirong' as card_content_type,count(1) as click_pv
FROM online.bl_hdfs_maidian_updates
WHERE partition_date >= '{partition_day}'
AND partition_date < '{end_date}'
AND ((action in ('on_click_topic_card','on_click_diary_card','search_result_click_infomation_item')
AND page_name in ('search_result_more','search_result_diary','search_result_post'))
or (action = 'on_click_card' AND params['card_content_type'] in ('answer','diary') AND page_name in ('search_result_more','search_result_diary','search_result_question_answer')))
GROUP BY partition_date,cl_id,'neirong'
)t2
GROUP BY cl_id,partition_date
)t2
ON t1.partition_day=t2.partition_date AND t1.device_id=t2.cl_id
)exp
left join
( (
SELECT DISTINCT device_id SELECT DISTINCT device_id
FROM ml.ml_d_ct_dv_devicespam_d --去除机构刷单设备,即作弊设备(浏览和曝光事件去除) FROM ml.ml_d_ct_dv_devicespam_d --去除机构刷单设备,即作弊设备(浏览和曝光事件去除)
...@@ -158,7 +124,7 @@ for t in range(1, task_days): ...@@ -158,7 +124,7 @@ for t in range(1, task_days):
SELECT DISTINCT device_id SELECT DISTINCT device_id
FROM dim.dim_device_user_staff --去除内网用户 FROM dim.dim_device_user_staff --去除内网用户
)spam_pv )spam_pv
on spam_pv.device_id=exp.device_id on spam_pv.device_id=a.device_id
LEFT JOIN LEFT JOIN
( (
SELECT partition_date,device_id SELECT partition_date,device_id
...@@ -209,9 +175,45 @@ for t in range(1, task_days): ...@@ -209,9 +175,45 @@ for t in range(1, task_days):
on t1.user_id=t2.user_id on t1.user_id=t2.user_id
group by partition_date,device_id group by partition_date,device_id
)dev )dev
on exp.device_id=dev.device_id on a.device_id=dev.device_id
WHERE (exp.device_id IS NULL or exp.device_id = '') WHERE (a.device_id IS NULL or a.device_id = '')
and (dev.device_id is null or dev.device_id='') and (dev.device_id is null or dev.device_id='')
group by partition_day,card_content_type,a.device_id
)t1
LEFT JOIN
(--搜索结果页卡片点击
SELECT cl_id,partition_date
,sum(CASE WHEN card_content_type='service' THEN click_pv END) as service_click_pv
,sum(CASE WHEN card_content_type='neirong' THEN click_pv END) as neirong_click_pv
FROM
(
SELECT partition_date,cl_id,'service' as card_content_type,count(1) as click_pv
FROM online.bl_hdfs_maidian_updates
WHERE partition_date >= '{partition_day}'
AND partition_date < '{end_date}'
AND ((action in ('search_result_click_recommend_item','search_result_welfare_click_item')
AND page_name in ('search_result_more','search_result_welfare'))
or (action = 'goto_welfare_detail' AND params ['from'] = 'search_result_welfare_recommend')
or (action = 'on_click_card' AND params['card_content_type'] in ('service') AND page_name in ('search_result_more','search_result_welfare')))
GROUP BY partition_date,cl_id,'service'
UNION ALL
SELECT partition_date,cl_id,'neirong' as card_content_type,count(1) as click_pv
FROM online.bl_hdfs_maidian_updates
WHERE partition_date >= '{partition_day}'
AND partition_date < '{end_date}'
AND ((action in ('on_click_topic_card','on_click_diary_card','search_result_click_infomation_item')
AND page_name in ('search_result_more','search_result_diary','search_result_post'))
or (action = 'on_click_card' AND params['card_content_type'] in ('answer','diary') AND page_name in ('search_result_more','search_result_diary','search_result_question_answer')))
GROUP BY partition_date,cl_id,'neirong'
)t2
GROUP BY cl_id,partition_date
)t2
ON t1.partition_day=t2.partition_date AND t1.device_id=t2.cl_id
)exp
JOIN JOIN
( (
SELECT partition_date,device_id,t2.active_type,t2.channel,t2.device_os_type SELECT partition_date,device_id,t2.active_type,t2.channel,t2.device_os_type
......
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