文章目录

  • 一 首日数据导入脚本
    • 1 编写脚本
    • 2 脚本内容
    • 3 脚本使用
  • 二 每日数据导入脚本
    • 1 编写脚本
    • 2 脚本内容
    • 3 脚本使用

一 首日数据导入脚本

1 编写脚本

在/home/hzy/bin目录下创建脚本dws_to_dwt_init.sh

vim dws_to_dwt._init.sh

2 脚本内容

#!/bin/bashAPP=gmallif [ -n "$2" ] ;thendo_date=$2
else echo "请传入日期参数"exit
fi dwt_visitor_topic="
insert overwrite table ${APP}.dwt_visitor_topic partition(dt='$do_date')
selectnvl(1d_ago.mid_id,old.mid_id),nvl(1d_ago.brand,old.brand),nvl(1d_ago.model,old.model),nvl(1d_ago.channel,old.channel),nvl(1d_ago.os,old.os),nvl(1d_ago.area_code,old.area_code),nvl(1d_ago.version_code,old.version_code),case when old.mid_id is null and 1d_ago.is_new=1 then '$do_date'when old.mid_id is null and 1d_ago.is_new=0 then '2020-06-13'--无法获取准确的首次登录日期,给定一个数仓搭建日之前的日期else old.visit_date_first end,if(1d_ago.mid_id is not null,'$do_date',old.visit_date_last),nvl(1d_ago.visit_count,0),if(1d_ago.mid_id is null,0,1),nvl(old.visit_last_7d_count,0)+nvl(1d_ago.visit_count,0)- nvl(7d_ago.visit_count,0),nvl(old.visit_last_7d_day_count,0)+if(1d_ago.mid_id is null,0,1)- if(7d_ago.mid_id is null,0,1),nvl(old.visit_last_30d_count,0)+nvl(1d_ago.visit_count,0)- nvl(30d_ago.visit_count,0),nvl(old.visit_last_30d_day_count,0)+if(1d_ago.mid_id is null,0,1)- if(30d_ago.mid_id is null,0,1),nvl(old.visit_count,0)+nvl(1d_ago.visit_count,0),nvl(old.visit_day_count,0)+if(1d_ago.mid_id is null,0,1)
from
(selectmid_id,brand,model,channel,os,area_code,version_code,visit_date_first,visit_date_last,visit_last_1d_count,visit_last_1d_day_count,visit_last_7d_count,visit_last_7d_day_count,visit_last_30d_count,visit_last_30d_day_count,visit_count,visit_day_countfrom ${APP}.dwt_visitor_topicwhere dt=date_add('$do_date',-1)
)old
full outer join
(selectmid_id,brand,model,is_new,channel,os,area_code,version_code,visit_countfrom ${APP}.dws_visitor_action_daycountwhere dt='$do_date'
)1d_ago
on old.mid_id=1d_ago.mid_id
left join
(selectmid_id,brand,model,is_new,channel,os,area_code,version_code,visit_countfrom ${APP}.dws_visitor_action_daycountwhere dt=date_add('$do_date',-7)
)7d_ago
on old.mid_id=7d_ago.mid_id
left join
(selectmid_id,brand,model,is_new,channel,os,area_code,version_code,visit_countfrom ${APP}.dws_visitor_action_daycountwhere dt=date_add('$do_date',-30)
)30d_ago
on old.mid_id=30d_ago.mid_id;
"dwt_user_topic="
insert overwrite table ${APP}.dwt_user_topic partition(dt='$do_date')
selectid,login_date_first,--以用户的创建日期作为首次登录日期nvl(login_date_last,date_add('$do_date',-1)),--若有历史登录记录,则根据历史记录获取末次登录日期,否则统一指定一个日期nvl(login_last_1d_count,0),nvl(login_last_1d_day_count,0),nvl(login_last_7d_count,0),nvl(login_last_7d_day_count,0),nvl(login_last_30d_count,0),nvl(login_last_30d_day_count,0),nvl(login_count,0),nvl(login_day_count,0),order_date_first,order_date_last,nvl(order_last_1d_count,0),nvl(order_activity_last_1d_count,0),nvl(order_activity_reduce_last_1d_amount,0),nvl(order_coupon_last_1d_count,0),nvl(order_coupon_reduce_last_1d_amount,0),nvl(order_last_1d_original_amount,0),nvl(order_last_1d_final_amount,0),nvl(order_last_7d_count,0),nvl(order_activity_last_7d_count,0),nvl(order_activity_reduce_last_7d_amount,0),nvl(order_coupon_last_7d_count,0),nvl(order_coupon_reduce_last_7d_amount,0),nvl(order_last_7d_original_amount,0),nvl(order_last_7d_final_amount,0),nvl(order_last_30d_count,0),nvl(order_activity_last_30d_count,0),nvl(order_activity_reduce_last_30d_amount,0),nvl(order_coupon_last_30d_count,0),nvl(order_coupon_reduce_last_30d_amount,0),nvl(order_last_30d_original_amount,0),nvl(order_last_30d_final_amount,0),nvl(order_count,0),nvl(order_activity_count,0),nvl(order_activity_reduce_amount,0),nvl(order_coupon_count,0),nvl(order_coupon_reduce_amount,0),nvl(order_original_amount,0),nvl(order_final_amount,0),payment_date_first,payment_date_last,nvl(payment_last_1d_count,0),nvl(payment_last_1d_amount,0),nvl(payment_last_7d_count,0),nvl(payment_last_7d_amount,0),nvl(payment_last_30d_count,0),nvl(payment_last_30d_amount,0),nvl(payment_count,0),nvl(payment_amount,0),nvl(refund_order_last_1d_count,0),nvl(refund_order_last_1d_num,0),nvl(refund_order_last_1d_amount,0),nvl(refund_order_last_7d_count,0),nvl(refund_order_last_7d_num,0),nvl(refund_order_last_7d_amount,0),nvl(refund_order_last_30d_count,0),nvl(refund_order_last_30d_num,0),nvl(refund_order_last_30d_amount,0),nvl(refund_order_count,0),nvl(refund_order_num,0),nvl(refund_order_amount,0),nvl(refund_payment_last_1d_count,0),nvl(refund_payment_last_1d_num,0),nvl(refund_payment_last_1d_amount,0),nvl(refund_payment_last_7d_count,0),nvl(refund_payment_last_7d_num,0),nvl(refund_payment_last_7d_amount,0),nvl(refund_payment_last_30d_count,0),nvl(refund_payment_last_30d_num,0),nvl(refund_payment_last_30d_amount,0),nvl(refund_payment_count,0),nvl(refund_payment_num,0),nvl(refund_payment_amount,0),nvl(cart_last_1d_count,0),nvl(cart_last_7d_count,0),nvl(cart_last_30d_count,0),nvl(cart_count,0),nvl(favor_last_1d_count,0),nvl(favor_last_7d_count,0),nvl(favor_last_30d_count,0),nvl(favor_count,0),nvl(coupon_last_1d_get_count,0),nvl(coupon_last_1d_using_count,0),nvl(coupon_last_1d_used_count,0),nvl(coupon_last_7d_get_count,0),nvl(coupon_last_7d_using_count,0),nvl(coupon_last_7d_used_count,0),nvl(coupon_last_30d_get_count,0),nvl(coupon_last_30d_using_count,0),nvl(coupon_last_30d_used_count,0),nvl(coupon_get_count,0),nvl(coupon_using_count,0),nvl(coupon_used_count,0),nvl(appraise_last_1d_good_count,0),nvl(appraise_last_1d_mid_count,0),nvl(appraise_last_1d_bad_count,0),nvl(appraise_last_1d_default_count,0),nvl(appraise_last_7d_good_count,0),nvl(appraise_last_7d_mid_count,0),nvl(appraise_last_7d_bad_count,0),nvl(appraise_last_7d_default_count,0),nvl(appraise_last_30d_good_count,0),nvl(appraise_last_30d_mid_count,0),nvl(appraise_last_30d_bad_count,0),nvl(appraise_last_30d_default_count,0),nvl(appraise_good_count,0),nvl(appraise_mid_count,0),nvl(appraise_bad_count,0),nvl(appraise_default_count,0)
from
(selectid,date_format(create_time,'yyyy-MM-dd') login_date_firstfrom ${APP}.dim_user_infowhere dt='9999-99-99'
)t1
left join
(selectuser_id user_id,max(dt) login_date_last,sum(if(dt='$do_date',login_count,0)) login_last_1d_count,sum(if(dt='$do_date' and login_count>0,1,0)) login_last_1d_day_count,sum(if(dt>=date_add('$do_date',-6),login_count,0)) login_last_7d_count,sum(if(dt>=date_add('$do_date',-6) and login_count>0,1,0)) login_last_7d_day_count,sum(if(dt>=date_add('$do_date',-29),login_count,0)) login_last_30d_count,sum(if(dt>=date_add('$do_date',-29) and login_count>0,1,0)) login_last_30d_day_count,sum(login_count) login_count,sum(if(login_count>0,1,0)) login_day_count,min(if(order_count>0,dt,null)) order_date_first,max(if(order_count>0,dt,null)) order_date_last,sum(if(dt='$do_date',order_count,0)) order_last_1d_count,sum(if(dt='$do_date',order_activity_count,0)) order_activity_last_1d_count,sum(if(dt='$do_date',order_activity_reduce_amount,0)) order_activity_reduce_last_1d_amount,sum(if(dt='$do_date',order_coupon_count,0)) order_coupon_last_1d_count,sum(if(dt='$do_date',order_coupon_reduce_amount,0)) order_coupon_reduce_last_1d_amount,sum(if(dt='$do_date',order_original_amount,0)) order_last_1d_original_amount,sum(if(dt='$do_date',order_final_amount,0)) order_last_1d_final_amount,sum(if(dt>=date_add('$do_date',-6),order_count,0)) order_last_7d_count,sum(if(dt>=date_add('$do_date',-6),order_activity_count,0)) order_activity_last_7d_count,sum(if(dt>=date_add('$do_date',-6),order_activity_reduce_amount,0)) order_activity_reduce_last_7d_amount,sum(if(dt>=date_add('$do_date',-6),order_coupon_count,0)) order_coupon_last_7d_count,sum(if(dt>=date_add('$do_date',-6),order_coupon_reduce_amount,0)) order_coupon_reduce_last_7d_amount,sum(if(dt>=date_add('$do_date',-6),order_original_amount,0)) order_last_7d_original_amount,sum(if(dt>=date_add('$do_date',-6),order_final_amount,0)) order_last_7d_final_amount,sum(if(dt>=date_add('$do_date',-29),order_count,0)) order_last_30d_count,sum(if(dt>=date_add('$do_date',-29),order_activity_count,0)) order_activity_last_30d_count,sum(if(dt>=date_add('$do_date',-29),order_activity_reduce_amount,0)) order_activity_reduce_last_30d_amount,sum(if(dt>=date_add('$do_date',-29),order_coupon_count,0)) order_coupon_last_30d_count,sum(if(dt>=date_add('$do_date',-29),order_coupon_reduce_amount,0)) order_coupon_reduce_last_30d_amount,sum(if(dt>=date_add('$do_date',-29),order_original_amount,0)) order_last_30d_original_amount,sum(if(dt>=date_add('$do_date',-29),order_final_amount,0)) order_last_30d_final_amount,sum(order_count) order_count,sum(order_activity_count) order_activity_count,sum(order_activity_reduce_amount) order_activity_reduce_amount,sum(order_coupon_count) order_coupon_count,sum(order_coupon_reduce_amount) order_coupon_reduce_amount,sum(order_original_amount) order_original_amount,sum(order_final_amount) order_final_amount,min(if(payment_count>0,dt,null)) payment_date_first,max(if(payment_count>0,dt,null)) payment_date_last,sum(if(dt='$do_date',payment_count,0)) payment_last_1d_count,sum(if(dt='$do_date',payment_amount,0)) payment_last_1d_amount,sum(if(dt>=date_add('$do_date',-6),payment_count,0)) payment_last_7d_count,sum(if(dt>=date_add('$do_date',-6),payment_amount,0)) payment_last_7d_amount,sum(if(dt>=date_add('$do_date',-29),payment_count,0)) payment_last_30d_count,sum(if(dt>=date_add('$do_date',-29),payment_amount,0)) payment_last_30d_amount,sum(payment_count) payment_count,sum(payment_amount) payment_amount,sum(if(dt='$do_date',refund_order_count,0)) refund_order_last_1d_count,sum(if(dt='$do_date',refund_order_num,0)) refund_order_last_1d_num,sum(if(dt='$do_date',refund_order_amount,0)) refund_order_last_1d_amount,sum(if(dt>=date_add('$do_date',-6),refund_order_count,0)) refund_order_last_7d_count,sum(if(dt>=date_add('$do_date',-6),refund_order_num,0)) refund_order_last_7d_num,sum(if(dt>=date_add('$do_date',-6),refund_order_amount,0)) refund_order_last_7d_amount,sum(if(dt>=date_add('$do_date',-29),refund_order_count,0)) refund_order_last_30d_count,sum(if(dt>=date_add('$do_date',-29),refund_order_num,0)) refund_order_last_30d_num,sum(if(dt>=date_add('$do_date',-29),refund_order_amount,0)) refund_order_last_30d_amount,sum(refund_order_count) refund_order_count,sum(refund_order_num) refund_order_num,sum(refund_order_amount) refund_order_amount,sum(if(dt='$do_date',refund_payment_count,0)) refund_payment_last_1d_count,sum(if(dt='$do_date',refund_payment_num,0)) refund_payment_last_1d_num,sum(if(dt='$do_date',refund_payment_amount,0)) refund_payment_last_1d_amount,sum(if(dt>=date_add('$do_date',-6),refund_payment_count,0)) refund_payment_last_7d_count,sum(if(dt>=date_add('$do_date',-6),refund_payment_num,0)) refund_payment_last_7d_num,sum(if(dt>=date_add('$do_date',-6),refund_payment_amount,0)) refund_payment_last_7d_amount,sum(if(dt>=date_add('$do_date',-29),refund_payment_count,0)) refund_payment_last_30d_count,sum(if(dt>=date_add('$do_date',-29),refund_payment_num,0)) refund_payment_last_30d_num,sum(if(dt>=date_add('$do_date',-29),refund_payment_amount,0)) refund_payment_last_30d_amount,sum(refund_payment_count) refund_payment_count,sum(refund_payment_num) refund_payment_num,sum(refund_payment_amount) refund_payment_amount,sum(if(dt='$do_date',cart_count,0)) cart_last_1d_count,sum(if(dt>=date_add('$do_date',-6),cart_count,0)) cart_last_7d_count,sum(if(dt>=date_add('$do_date',-29),cart_count,0)) cart_last_30d_count,sum(cart_count) cart_count,sum(if(dt='$do_date',favor_count,0)) favor_last_1d_count,sum(if(dt>=date_add('$do_date',-6),favor_count,0)) favor_last_7d_count,sum(if(dt>=date_add('$do_date',-29),favor_count,0)) favor_last_30d_count,sum(favor_count) favor_count,sum(if(dt='$do_date',coupon_get_count,0)) coupon_last_1d_get_count,sum(if(dt='$do_date',coupon_using_count,0)) coupon_last_1d_using_count,sum(if(dt='$do_date',coupon_used_count,0)) coupon_last_1d_used_count,sum(if(dt>=date_add('$do_date',-6),coupon_get_count,0)) coupon_last_7d_get_count,sum(if(dt>=date_add('$do_date',-6),coupon_using_count,0)) coupon_last_7d_using_count,sum(if(dt>=date_add('$do_date',-6),coupon_used_count,0)) coupon_last_7d_used_count,sum(if(dt>=date_add('$do_date',-29),coupon_get_count,0)) coupon_last_30d_get_count,sum(if(dt>=date_add('$do_date',-29),coupon_using_count,0)) coupon_last_30d_using_count,sum(if(dt>=date_add('$do_date',-29),coupon_used_count,0)) coupon_last_30d_used_count,sum(coupon_get_count) coupon_get_count,sum(coupon_using_count) coupon_using_count,sum(coupon_used_count) coupon_used_count,sum(if(dt='$do_date',appraise_good_count,0)) appraise_last_1d_good_count,sum(if(dt='$do_date',appraise_mid_count,0)) appraise_last_1d_mid_count,sum(if(dt='$do_date',appraise_bad_count,0)) appraise_last_1d_bad_count,sum(if(dt='$do_date',appraise_default_count,0)) appraise_last_1d_default_count,sum(if(dt>=date_add('$do_date',-6),appraise_good_count,0)) appraise_last_7d_good_count,sum(if(dt>=date_add('$do_date',-6),appraise_mid_count,0)) appraise_last_7d_mid_count,sum(if(dt>=date_add('$do_date',-6),appraise_bad_count,0)) appraise_last_7d_bad_count,sum(if(dt>=date_add('$do_date',-6),appraise_default_count,0)) appraise_last_7d_default_count,sum(if(dt>=date_add('$do_date',-29),appraise_good_count,0)) appraise_last_30d_good_count,sum(if(dt>=date_add('$do_date',-29),appraise_mid_count,0)) appraise_last_30d_mid_count,sum(if(dt>=date_add('$do_date',-29),appraise_bad_count,0)) appraise_last_30d_bad_count,sum(if(dt>=date_add('$do_date',-29),appraise_default_count,0)) appraise_last_30d_default_count,sum(appraise_good_count) appraise_good_count,sum(appraise_mid_count) appraise_mid_count,sum(appraise_bad_count) appraise_bad_count,sum(appraise_default_count) appraise_default_countfrom ${APP}.dws_user_action_daycountgroup by user_id
)t2
on t1.id=t2.user_id;
"dwt_sku_topic="
insert overwrite table ${APP}.dwt_sku_topic partition(dt='$do_date')
selectid,nvl(order_last_1d_count,0),nvl(order_last_1d_num,0),nvl(order_activity_last_1d_count,0),nvl(order_coupon_last_1d_count,0),nvl(order_activity_reduce_last_1d_amount,0),nvl(order_coupon_reduce_last_1d_amount,0),nvl(order_last_1d_original_amount,0),nvl(order_last_1d_final_amount,0),nvl(order_last_7d_count,0),nvl(order_last_7d_num,0),nvl(order_activity_last_7d_count,0),nvl(order_coupon_last_7d_count,0),nvl(order_activity_reduce_last_7d_amount,0),nvl(order_coupon_reduce_last_7d_amount,0),nvl(order_last_7d_original_amount,0),nvl(order_last_7d_final_amount,0),nvl(order_last_30d_count,0),nvl(order_last_30d_num,0),nvl(order_activity_last_30d_count,0),nvl(order_coupon_last_30d_count,0),nvl(order_activity_reduce_last_30d_amount,0),nvl(order_coupon_reduce_last_30d_amount,0),nvl(order_last_30d_original_amount,0),nvl(order_last_30d_final_amount,0),nvl(order_count,0),nvl(order_num,0),nvl(order_activity_count,0),nvl(order_coupon_count,0),nvl(order_activity_reduce_amount,0),nvl(order_coupon_reduce_amount,0),nvl(order_original_amount,0),nvl(order_final_amount,0),nvl(payment_last_1d_count,0),nvl(payment_last_1d_num,0),nvl(payment_last_1d_amount,0),nvl(payment_last_7d_count,0),nvl(payment_last_7d_num,0),nvl(payment_last_7d_amount,0),nvl(payment_last_30d_count,0),nvl(payment_last_30d_num,0),nvl(payment_last_30d_amount,0),nvl(payment_count,0),nvl(payment_num,0),nvl(payment_amount,0),nvl(refund_order_last_1d_count,0),nvl(refund_order_last_1d_num,0),nvl(refund_order_last_1d_amount,0),nvl(refund_order_last_7d_count,0),nvl(refund_order_last_7d_num,0),nvl(refund_order_last_7d_amount,0),nvl(refund_order_last_30d_count,0),nvl(refund_order_last_30d_num,0),nvl(refund_order_last_30d_amount,0),nvl(refund_order_count,0),nvl(refund_order_num,0),nvl(refund_order_amount,0),nvl(refund_payment_last_1d_count,0),nvl(refund_payment_last_1d_num,0),nvl(refund_payment_last_1d_amount,0),nvl(refund_payment_last_7d_count,0),nvl(refund_payment_last_7d_num,0),nvl(refund_payment_last_7d_amount,0),nvl(refund_payment_last_30d_count,0),nvl(refund_payment_last_30d_num,0),nvl(refund_payment_last_30d_amount,0),nvl(refund_payment_count,0),nvl(refund_payment_num,0),nvl(refund_payment_amount,0),nvl(cart_last_1d_count,0),nvl(cart_last_7d_count,0),nvl(cart_last_30d_count,0),nvl(cart_count,0),nvl(favor_last_1d_count,0),nvl(favor_last_7d_count,0),nvl(favor_last_30d_count,0),nvl(favor_count,0),nvl(appraise_last_1d_good_count,0),nvl(appraise_last_1d_mid_count,0),nvl(appraise_last_1d_bad_count,0),nvl(appraise_last_1d_default_count,0),nvl(appraise_last_7d_good_count,0),nvl(appraise_last_7d_mid_count,0),nvl(appraise_last_7d_bad_count,0),nvl(appraise_last_7d_default_count,0),nvl(appraise_last_30d_good_count,0),nvl(appraise_last_30d_mid_count,0),nvl(appraise_last_30d_bad_count,0),nvl(appraise_last_30d_default_count,0),nvl(appraise_good_count,0),nvl(appraise_mid_count,0),nvl(appraise_bad_count,0),nvl(appraise_default_count,0)
from
(selectidfrom ${APP}.dim_sku_infowhere dt='$do_date'
)t1
left join
(selectsku_id,sum(if(dt='$do_date',order_count,0)) order_last_1d_count,sum(if(dt='$do_date',order_num,0)) order_last_1d_num,sum(if(dt='$do_date',order_activity_count,0)) order_activity_last_1d_count,sum(if(dt='$do_date',order_coupon_count,0)) order_coupon_last_1d_count,sum(if(dt='$do_date',order_activity_reduce_amount,0)) order_activity_reduce_last_1d_amount,sum(if(dt='$do_date',order_coupon_reduce_amount,0)) order_coupon_reduce_last_1d_amount,sum(if(dt='$do_date',order_original_amount,0)) order_last_1d_original_amount,sum(if(dt='$do_date',order_final_amount,0)) order_last_1d_final_amount,sum(if(dt>=date_add('$do_date',-6),order_count,0)) order_last_7d_count,sum(if(dt>=date_add('$do_date',-6),order_num,0)) order_last_7d_num,sum(if(dt>=date_add('$do_date',-6),order_activity_count,0)) order_activity_last_7d_count,sum(if(dt>=date_add('$do_date',-6),order_coupon_count,0)) order_coupon_last_7d_count,sum(if(dt>=date_add('$do_date',-6),order_activity_reduce_amount,0)) order_activity_reduce_last_7d_amount,sum(if(dt>=date_add('$do_date',-6),order_coupon_reduce_amount,0)) order_coupon_reduce_last_7d_amount,sum(if(dt>=date_add('$do_date',-6),order_original_amount,0)) order_last_7d_original_amount,sum(if(dt>=date_add('$do_date',-6),order_final_amount,0)) order_last_7d_final_amount,sum(if(dt>=date_add('$do_date',-29),order_count,0)) order_last_30d_count,sum(if(dt>=date_add('$do_date',-29),order_num,0)) order_last_30d_num,sum(if(dt>=date_add('$do_date',-29),order_activity_count,0)) order_activity_last_30d_count,sum(if(dt>=date_add('$do_date',-29),order_coupon_count,0)) order_coupon_last_30d_count,sum(if(dt>=date_add('$do_date',-29),order_activity_reduce_amount,0)) order_activity_reduce_last_30d_amount,sum(if(dt>=date_add('$do_date',-29),order_coupon_reduce_amount,0)) order_coupon_reduce_last_30d_amount,sum(if(dt>=date_add('$do_date',-29),order_original_amount,0)) order_last_30d_original_amount,sum(if(dt>=date_add('$do_date',-29),order_final_amount,0)) order_last_30d_final_amount,sum(order_count) order_count,sum(order_num) order_num,sum(order_activity_count) order_activity_count,sum(order_coupon_count) order_coupon_count,sum(order_activity_reduce_amount) order_activity_reduce_amount,sum(order_coupon_reduce_amount) order_coupon_reduce_amount,sum(order_original_amount) order_original_amount,sum(order_final_amount) order_final_amount,sum(if(dt='$do_date',payment_count,0)) payment_last_1d_count,sum(if(dt='$do_date',payment_num,0)) payment_last_1d_num,sum(if(dt='$do_date',payment_amount,0)) payment_last_1d_amount,sum(if(dt>=date_add('$do_date',-6),payment_count,0)) payment_last_7d_count,sum(if(dt>=date_add('$do_date',-6),payment_num,0)) payment_last_7d_num,sum(if(dt>=date_add('$do_date',-6),payment_amount,0)) payment_last_7d_amount,sum(if(dt>=date_add('$do_date',-29),payment_count,0)) payment_last_30d_count,sum(if(dt>=date_add('$do_date',-29),payment_num,0)) payment_last_30d_num,sum(if(dt>=date_add('$do_date',-29),payment_amount,0)) payment_last_30d_amount,sum(payment_count) payment_count,sum(payment_num) payment_num,sum(payment_amount) payment_amount,sum(if(dt='$do_date',refund_order_count,0)) refund_order_last_1d_count,sum(if(dt='$do_date',refund_order_num,0)) refund_order_last_1d_num,sum(if(dt='$do_date',refund_order_amount,0)) refund_order_last_1d_amount,sum(if(dt>=date_add('$do_date',-6),refund_order_count,0)) refund_order_last_7d_count,sum(if(dt>=date_add('$do_date',-6),refund_order_num,0)) refund_order_last_7d_num,sum(if(dt>=date_add('$do_date',-6),refund_order_amount,0)) refund_order_last_7d_amount,sum(if(dt>=date_add('$do_date',-29),refund_order_count,0)) refund_order_last_30d_count,sum(if(dt>=date_add('$do_date',-29),refund_order_num,0)) refund_order_last_30d_num,sum(if(dt>=date_add('$do_date',-29),refund_order_amount,0)) refund_order_last_30d_amount,sum(refund_order_count) refund_order_count,sum(refund_order_num) refund_order_num,sum(refund_order_amount) refund_order_amount,sum(if(dt='$do_date',refund_payment_count,0)) refund_payment_last_1d_count,sum(if(dt='$do_date',refund_payment_num,0)) refund_payment_last_1d_num,sum(if(dt='$do_date',refund_payment_amount,0)) refund_payment_last_1d_amount,sum(if(dt>=date_add('$do_date',-6),refund_payment_count,0)) refund_payment_last_7d_count,sum(if(dt>=date_add('$do_date',-6),refund_payment_num,0)) refund_payment_last_7d_num,sum(if(dt>=date_add('$do_date',-6),refund_payment_amount,0)) refund_payment_last_7d_amount,sum(if(dt>=date_add('$do_date',-29),refund_payment_count,0)) refund_payment_last_30d_count,sum(if(dt>=date_add('$do_date',-29),refund_payment_num,0)) refund_payment_last_30d_num,sum(if(dt>=date_add('$do_date',-29),refund_payment_amount,0)) refund_payment_last_30d_amount,sum(refund_payment_count) refund_payment_count,sum(refund_payment_num) refund_payment_num,sum(refund_payment_amount) refund_payment_amount,sum(if(dt='$do_date',cart_count,0)) cart_last_1d_count,sum(if(dt>=date_add('$do_date',-6),cart_count,0)) cart_last_7d_count,sum(if(dt>=date_add('$do_date',-29),cart_count,0)) cart_last_30d_count,sum(cart_count) cart_count,sum(if(dt='$do_date',favor_count,0)) favor_last_1d_count,sum(if(dt>=date_add('$do_date',-6),favor_count,0)) favor_last_7d_count,sum(if(dt>=date_add('$do_date',-29),favor_count,0)) favor_last_30d_count,sum(favor_count) favor_count,sum(if(dt='$do_date',appraise_good_count,0)) appraise_last_1d_good_count,sum(if(dt='$do_date',appraise_mid_count,0)) appraise_last_1d_mid_count,sum(if(dt='$do_date',appraise_bad_count,0)) appraise_last_1d_bad_count,sum(if(dt='$do_date',appraise_default_count,0)) appraise_last_1d_default_count,sum(if(dt>=date_add('$do_date',-6),appraise_good_count,0)) appraise_last_7d_good_count,sum(if(dt>=date_add('$do_date',-6),appraise_mid_count,0)) appraise_last_7d_mid_count,sum(if(dt>=date_add('$do_date',-6),appraise_bad_count,0)) appraise_last_7d_bad_count,sum(if(dt>=date_add('$do_date',-6),appraise_default_count,0)) appraise_last_7d_default_count,sum(if(dt>=date_add('$do_date',-29),appraise_good_count,0)) appraise_last_30d_good_count,sum(if(dt>=date_add('$do_date',-29),appraise_mid_count,0)) appraise_last_30d_mid_count,sum(if(dt>=date_add('$do_date',-29),appraise_bad_count,0)) appraise_last_30d_bad_count,sum(if(dt>=date_add('$do_date',-29),appraise_default_count,0)) appraise_last_30d_default_count,sum(appraise_good_count) appraise_good_count,sum(appraise_mid_count) appraise_mid_count,sum(appraise_bad_count) appraise_bad_count,sum(appraise_default_count) appraise_default_countfrom ${APP}.dws_sku_action_daycountgroup by sku_id
)t2
on t1.id=t2.sku_id;
"dwt_coupon_topic="
insert overwrite table ${APP}.dwt_coupon_topic partition(dt='$do_date')
selectid,nvl(get_last_1d_count,0),nvl(get_last_7d_count,0),nvl(get_last_30d_count,0),nvl(get_count,0),nvl(order_last_1d_count,0),nvl(order_last_1d_reduce_amount,0),nvl(order_last_1d_original_amount,0),nvl(order_last_1d_final_amount,0),nvl(order_last_7d_count,0),nvl(order_last_7d_reduce_amount,0),nvl(order_last_7d_original_amount,0),nvl(order_last_7d_final_amount,0),nvl(order_last_30d_count,0),nvl(order_last_30d_reduce_amount,0),nvl(order_last_30d_original_amount,0),nvl(order_last_30d_final_amount,0),nvl(order_count,0),nvl(order_reduce_amount,0),nvl(order_original_amount,0),nvl(order_final_amount,0),nvl(payment_last_1d_count,0),nvl(payment_last_1d_reduce_amount,0),nvl(payment_last_1d_amount,0),nvl(payment_last_7d_count,0),nvl(payment_last_7d_reduce_amount,0),nvl(payment_last_7d_amount,0),nvl(payment_last_30d_count,0),nvl(payment_last_30d_reduce_amount,0),nvl(payment_last_30d_amount,0),nvl(payment_count,0),nvl(payment_reduce_amount,0),nvl(payment_amount,0),nvl(expire_last_1d_count,0),nvl(expire_last_7d_count,0),nvl(expire_last_30d_count,0),nvl(expire_count,0)
from
(selectidfrom ${APP}.dim_coupon_infowhere dt='$do_date'
)t1
left join
(selectcoupon_id coupon_id,sum(if(dt='$do_date',get_count,0)) get_last_1d_count,sum(if(dt>=date_add('$do_date',-6),get_count,0)) get_last_7d_count,sum(if(dt>=date_add('$do_date',-29),get_count,0)) get_last_30d_count,sum(get_count) get_count,sum(if(dt='$do_date',order_count,0)) order_last_1d_count,sum(if(dt='$do_date',order_reduce_amount,0)) order_last_1d_reduce_amount,sum(if(dt='$do_date',order_original_amount,0)) order_last_1d_original_amount,sum(if(dt='$do_date',order_final_amount,0)) order_last_1d_final_amount,sum(if(dt>=date_add('$do_date',-6),order_count,0)) order_last_7d_count,sum(if(dt>=date_add('$do_date',-6),order_reduce_amount,0)) order_last_7d_reduce_amount,sum(if(dt>=date_add('$do_date',-6),order_original_amount,0)) order_last_7d_original_amount,sum(if(dt>=date_add('$do_date',-6),order_final_amount,0)) order_last_7d_final_amount,sum(if(dt>=date_add('$do_date',-29),order_count,0)) order_last_30d_count,sum(if(dt>=date_add('$do_date',-29),order_reduce_amount,0)) order_last_30d_reduce_amount,sum(if(dt>=date_add('$do_date',-29),order_original_amount,0)) order_last_30d_original_amount,sum(if(dt>=date_add('$do_date',-29),order_final_amount,0)) order_last_30d_final_amount,sum(order_count) order_count,sum(order_reduce_amount) order_reduce_amount,sum(order_original_amount) order_original_amount,sum(order_final_amount) order_final_amount,sum(if(dt='$do_date',payment_count,0)) payment_last_1d_count,sum(if(dt='$do_date',payment_reduce_amount,0)) payment_last_1d_reduce_amount,sum(if(dt='$do_date',payment_amount,0)) payment_last_1d_amount,sum(if(dt>=date_add('$do_date',-6),payment_count,0)) payment_last_7d_count,sum(if(dt>=date_add('$do_date',-6),payment_reduce_amount,0)) payment_last_7d_reduce_amount,sum(if(dt>=date_add('$do_date',-6),payment_amount,0)) payment_last_7d_amount,sum(if(dt>=date_add('$do_date',-29),payment_count,0)) payment_last_30d_count,sum(if(dt>=date_add('$do_date',-29),payment_reduce_amount,0)) payment_last_30d_reduce_amount,sum(if(dt>=date_add('$do_date',-29),payment_amount,0)) payment_last_30d_amount,sum(payment_count) payment_count,sum(payment_reduce_amount) payment_reduce_amount,sum(payment_amount) payment_amount,sum(if(dt='$do_date',expire_count,0)) expire_last_1d_count,sum(if(dt>=date_add('$do_date',-6),expire_count,0)) expire_last_7d_count,sum(if(dt>=date_add('$do_date',-29),expire_count,0)) expire_last_30d_count,sum(expire_count) expire_countfrom ${APP}.dws_coupon_info_daycountgroup by coupon_id
)t2
on t1.id=t2.coupon_id;
"dwt_activity_topic="
insert overwrite table ${APP}.dwt_activity_topic partition(dt='$do_date')
selectt1.activity_rule_id,t1.activity_id,nvl(order_last_1d_count,0),nvl(order_last_1d_reduce_amount,0),nvl(order_last_1d_original_amount,0),nvl(order_last_1d_final_amount,0),nvl(order_count,0),nvl(order_reduce_amount,0),nvl(order_original_amount,0),nvl(order_final_amount,0),nvl(payment_last_1d_count,0),nvl(payment_last_1d_reduce_amount,0),nvl(payment_last_1d_amount,0),nvl(payment_count,0),nvl(payment_reduce_amount,0),nvl(payment_amount,0)
from
(selectactivity_rule_id,activity_idfrom ${APP}.dim_activity_rule_infowhere dt='$do_date'
)t1
left join
(selectactivity_rule_id,activity_id,sum(if(dt='$do_date',order_count,0)) order_last_1d_count,sum(if(dt='$do_date',order_reduce_amount,0)) order_last_1d_reduce_amount,sum(if(dt='$do_date',order_original_amount,0)) order_last_1d_original_amount,sum(if(dt='$do_date',order_final_amount,0)) order_last_1d_final_amount,sum(order_count) order_count,sum(order_reduce_amount) order_reduce_amount,sum(order_original_amount) order_original_amount,sum(order_final_amount) order_final_amount,sum(if(dt='$do_date',payment_count,0)) payment_last_1d_count,sum(if(dt='$do_date',payment_reduce_amount,0)) payment_last_1d_reduce_amount,sum(if(dt='$do_date',payment_amount,0)) payment_last_1d_amount,sum(payment_count) payment_count,sum(payment_reduce_amount) payment_reduce_amount,sum(payment_amount) payment_amountfrom ${APP}.dws_activity_info_daycountgroup by activity_rule_id,activity_id
)t2
on t1.activity_rule_id=t2.activity_rule_id
and t1.activity_id=t2.activity_id;
"dwt_area_topic="
insert overwrite table ${APP}.dwt_area_topic partition(dt='$do_date')
selectid,nvl(visit_last_1d_count,0),nvl(login_last_1d_count,0),nvl(visit_last_7d_count,0),nvl(login_last_7d_count,0),nvl(visit_last_30d_count,0),nvl(login_last_30d_count,0),nvl(visit_count,0),nvl(login_count,0),nvl(order_last_1d_count,0),nvl(order_last_1d_original_amount,0),nvl(order_last_1d_final_amount,0),nvl(order_last_7d_count,0),nvl(order_last_7d_original_amount,0),nvl(order_last_7d_final_amount,0),nvl(order_last_30d_count,0),nvl(order_last_30d_original_amount,0),nvl(order_last_30d_final_amount,0),nvl(order_count,0),nvl(order_original_amount,0),nvl(order_final_amount,0),nvl(payment_last_1d_count,0),nvl(payment_last_1d_amount,0),nvl(payment_last_7d_count,0),nvl(payment_last_7d_amount,0),nvl(payment_last_30d_count,0),nvl(payment_last_30d_amount,0),nvl(payment_count,0),nvl(payment_amount,0),nvl(refund_order_last_1d_count,0),nvl(refund_order_last_1d_amount,0),nvl(refund_order_last_7d_count,0),nvl(refund_order_last_7d_amount,0),nvl(refund_order_last_30d_count,0),nvl(refund_order_last_30d_amount,0),nvl(refund_order_count,0),nvl(refund_order_amount,0),nvl(refund_payment_last_1d_count,0),nvl(refund_payment_last_1d_amount,0),nvl(refund_payment_last_7d_count,0),nvl(refund_payment_last_7d_amount,0),nvl(refund_payment_last_30d_count,0),nvl(refund_payment_last_30d_amount,0),nvl(refund_payment_count,0),nvl(refund_payment_amount,0)
from
(selectidfrom ${APP}.dim_base_province
)t1
left join
(selectprovince_id province_id,sum(if(dt='$do_date',visit_count,0)) visit_last_1d_count,sum(if(dt='$do_date',login_count,0)) login_last_1d_count,sum(if(dt>=date_add('$do_date',-6),visit_count,0)) visit_last_7d_count,sum(if(dt>=date_add('$do_date',-6),login_count,0)) login_last_7d_count,sum(if(dt>=date_add('$do_date',-29),visit_count,0)) visit_last_30d_count,sum(if(dt>=date_add('$do_date',-29),login_count,0)) login_last_30d_count,sum(visit_count) visit_count,sum(login_count) login_count,sum(if(dt='$do_date',order_count,0)) order_last_1d_count,sum(if(dt='$do_date',order_original_amount,0)) order_last_1d_original_amount,sum(if(dt='$do_date',order_final_amount,0)) order_last_1d_final_amount,sum(if(dt>=date_add('$do_date',-6),order_count,0)) order_last_7d_count,sum(if(dt>=date_add('$do_date',-6),order_original_amount,0)) order_last_7d_original_amount,sum(if(dt>=date_add('$do_date',-6),order_final_amount,0)) order_last_7d_final_amount,sum(if(dt>=date_add('$do_date',-29),order_count,0)) order_last_30d_count,sum(if(dt>=date_add('$do_date',-29),order_original_amount,0)) order_last_30d_original_amount,sum(if(dt>=date_add('$do_date',-29),order_final_amount,0)) order_last_30d_final_amount,sum(order_count) order_count,sum(order_original_amount) order_original_amount,sum(order_final_amount) order_final_amount,sum(if(dt='$do_date',payment_count,0)) payment_last_1d_count,sum(if(dt='$do_date',payment_amount,0)) payment_last_1d_amount,sum(if(dt>=date_add('$do_date',-6),payment_count,0)) payment_last_7d_count,sum(if(dt>=date_add('$do_date',-6),payment_amount,0)) payment_last_7d_amount,sum(if(dt>=date_add('$do_date',-29),payment_count,0)) payment_last_30d_count,sum(if(dt>=date_add('$do_date',-29),payment_amount,0)) payment_last_30d_amount,sum(payment_count) payment_count,sum(payment_amount) payment_amount,sum(if(dt='$do_date',refund_order_count,0)) refund_order_last_1d_count,sum(if(dt='$do_date',refund_order_amount,0)) refund_order_last_1d_amount,sum(if(dt>=date_add('$do_date',-6),refund_order_count,0)) refund_order_last_7d_count,sum(if(dt>=date_add('$do_date',-6),refund_order_amount,0)) refund_order_last_7d_amount,sum(if(dt>=date_add('$do_date',-29),refund_order_count,0)) refund_order_last_30d_count,sum(if(dt>=date_add('$do_date',-29),refund_order_amount,0)) refund_order_last_30d_amount,sum(refund_order_count) refund_order_count,sum(refund_order_amount) refund_order_amount,sum(if(dt='$do_date',refund_payment_count,0)) refund_payment_last_1d_count,sum(if(dt='$do_date',refund_payment_amount,0)) refund_payment_last_1d_amount,sum(if(dt>=date_add('$do_date',-6),refund_payment_count,0)) refund_payment_last_7d_count,sum(if(dt>=date_add('$do_date',-6),refund_payment_amount,0)) refund_payment_last_7d_amount,sum(if(dt>=date_add('$do_date',-29),refund_payment_count,0)) refund_payment_last_30d_count,sum(if(dt>=date_add('$do_date',-29),refund_payment_amount,0)) refund_payment_last_30d_amount,sum(refund_payment_count) refund_payment_count,sum(refund_payment_amount) refund_payment_amountfrom ${APP}.dws_area_stats_daycountgroup by province_id
)t2
on t1.id=t2.province_id;
"case $1 in"dwt_visitor_topic" )hive -e "$dwt_visitor_topic";;"dwt_user_topic" )hive -e "$dwt_user_topic";;"dwt_sku_topic" )hive -e "$dwt_sku_topic";;"dwt_activity_topic" )hive -e "$dwt_activity_topic";;"dwt_coupon_topic" )hive -e "$dwt_coupon_topic";;"dwt_area_topic" )hive -e "$dwt_area_topic";;"all" )hive -e "$dwt_visitor_topic$dwt_user_topic$dwt_sku_topic$dwt_activity_topic$dwt_coupon_topic$dwt_area_topic";;
esac

3 脚本使用

chmod +x dws_to_dwt_init.sh
dws_to_dwt_init.sh all 2020-06-14

二 每日数据导入脚本

1 编写脚本

在/home/hzy/bin目录下创建脚本dws_to_dwt.sh

vim dws_to_dwt.sh

2 脚本内容

#!/bin/bashAPP=gmall
# 如果是输入的日期按照取输入日期;如果没输入日期取当前时间的前一天
if [ -n "$2" ] ;thendo_date=$2
else do_date=`date -d "-1 day" +%F`
ficlear_date=`date -d "$do_date -2 day" +%F`dwt_visitor_topic="
insert overwrite table ${APP}.dwt_visitor_topic partition(dt='$do_date')
selectnvl(1d_ago.mid_id,old.mid_id),nvl(1d_ago.brand,old.brand),nvl(1d_ago.model,old.model),nvl(1d_ago.channel,old.channel),nvl(1d_ago.os,old.os),nvl(1d_ago.area_code,old.area_code),nvl(1d_ago.version_code,old.version_code),case when old.mid_id is null and 1d_ago.is_new=1 then '$do_date'when old.mid_id is null and 1d_ago.is_new=0 then '2020-06-13'--无法获取准确的首次登录日期,给定一个数仓搭建日之前的日期else old.visit_date_first end,if(1d_ago.mid_id is not null,'$do_date',old.visit_date_last),nvl(1d_ago.visit_count,0),if(1d_ago.mid_id is null,0,1),nvl(old.visit_last_7d_count,0)+nvl(1d_ago.visit_count,0)- nvl(7d_ago.visit_count,0),nvl(old.visit_last_7d_day_count,0)+if(1d_ago.mid_id is null,0,1)- if(7d_ago.mid_id is null,0,1),nvl(old.visit_last_30d_count,0)+nvl(1d_ago.visit_count,0)- nvl(30d_ago.visit_count,0),nvl(old.visit_last_30d_day_count,0)+if(1d_ago.mid_id is null,0,1)- if(30d_ago.mid_id is null,0,1),nvl(old.visit_count,0)+nvl(1d_ago.visit_count,0),nvl(old.visit_day_count,0)+if(1d_ago.mid_id is null,0,1)
from
(selectmid_id,brand,model,channel,os,area_code,version_code,visit_date_first,visit_date_last,visit_last_1d_count,visit_last_1d_day_count,visit_last_7d_count,visit_last_7d_day_count,visit_last_30d_count,visit_last_30d_day_count,visit_count,visit_day_countfrom ${APP}.dwt_visitor_topicwhere dt=date_add('$do_date',-1)
)old
full outer join
(selectmid_id,brand,model,is_new,channel,os,area_code,version_code,visit_countfrom ${APP}.dws_visitor_action_daycountwhere dt='$do_date'
)1d_ago
on old.mid_id=1d_ago.mid_id
left join
(selectmid_id,brand,model,is_new,channel,os,area_code,version_code,visit_countfrom ${APP}.dws_visitor_action_daycountwhere dt=date_add('$do_date',-7)
)7d_ago
on old.mid_id=7d_ago.mid_id
left join
(selectmid_id,brand,model,is_new,channel,os,area_code,version_code,visit_countfrom ${APP}.dws_visitor_action_daycountwhere dt=date_add('$do_date',-30)
)30d_ago
on old.mid_id=30d_ago.mid_id;
alter table ${APP}.dwt_visitor_topic drop partition(dt='$clear_date');
"dwt_user_topic="
insert overwrite table ${APP}.dwt_user_topic partition(dt='$do_date')
selectnvl(1d_ago.user_id,old.user_id),nvl(old.login_date_first,'$do_date'),if(1d_ago.user_id is not null,'$do_date',old.login_date_last),nvl(1d_ago.login_count,0),if(1d_ago.user_id is not null,1,0),nvl(old.login_last_7d_count,0)+nvl(1d_ago.login_count,0)- nvl(7d_ago.login_count,0),nvl(old.login_last_7d_day_count,0)+if(1d_ago.user_id is null,0,1)- if(7d_ago.user_id is null,0,1),nvl(old.login_last_30d_count,0)+nvl(1d_ago.login_count,0)- nvl(30d_ago.login_count,0),nvl(old.login_last_30d_day_count,0)+if(1d_ago.user_id is null,0,1)- if(30d_ago.user_id is null,0,1),nvl(old.login_count,0)+nvl(1d_ago.login_count,0),nvl(old.login_day_count,0)+if(1d_ago.user_id is not null,1,0),if(old.order_date_first is null and 1d_ago.order_count>0, '$do_date', old.order_date_first),if(1d_ago.order_count>0,'$do_date',old.order_date_last),nvl(1d_ago.order_count,0),nvl(1d_ago.order_activity_count,0),nvl(1d_ago.order_activity_reduce_amount,0.0),nvl(1d_ago.order_coupon_count,0),nvl(1d_ago.order_coupon_reduce_amount,0.0),nvl(1d_ago.order_original_amount,0.0),nvl(1d_ago.order_final_amount,0.0),nvl(old.order_last_7d_count,0)+nvl(1d_ago.order_count,0)- nvl(7d_ago.order_count,0),nvl(old.order_activity_last_7d_count,0)+nvl(1d_ago.order_activity_count,0)- nvl(7d_ago.order_activity_count,0),nvl(old.order_activity_reduce_last_7d_amount,0.0)+nvl(1d_ago.order_activity_reduce_amount,0.0)- nvl(7d_ago.order_activity_reduce_amount,0.0),nvl(old.order_coupon_last_7d_count,0)+nvl(1d_ago.order_coupon_count,0)- nvl(7d_ago.order_coupon_count,0),nvl(old.order_coupon_reduce_last_7d_amount,0.0)+nvl(1d_ago.order_coupon_reduce_amount,0.0)- nvl(7d_ago.order_coupon_reduce_amount,0.0),nvl(old.order_last_7d_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0)- nvl(7d_ago.order_original_amount,0.0),nvl(old.order_last_7d_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0)- nvl(7d_ago.order_final_amount,0.0),nvl(old.order_last_30d_count,0)+nvl(1d_ago.order_count,0)- nvl(30d_ago.order_count,0),nvl(old.order_activity_last_30d_count,0)+nvl(1d_ago.order_activity_count,0)- nvl(30d_ago.order_activity_count,0),nvl(old.order_activity_reduce_last_30d_amount,0.0)+nvl(1d_ago.order_activity_reduce_amount,0.0)- nvl(30d_ago.order_activity_reduce_amount,0.0),nvl(old.order_coupon_last_30d_count,0)+nvl(1d_ago.order_coupon_count,0)- nvl(30d_ago.order_coupon_count,0),nvl(old.order_coupon_reduce_last_30d_amount,0.0)+nvl(1d_ago.order_coupon_reduce_amount,0.0)- nvl(30d_ago.order_coupon_reduce_amount,0.0),nvl(old.order_last_30d_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0)- nvl(30d_ago.order_original_amount,0.0),nvl(old.order_last_30d_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0)- nvl(30d_ago.order_final_amount,0.0),nvl(old.order_count,0)+nvl(1d_ago.order_count,0),nvl(old.order_activity_count,0)+nvl(1d_ago.order_activity_count,0),nvl(old.order_activity_reduce_amount,0.0)+nvl(1d_ago.order_activity_reduce_amount,0.0),nvl(old.order_coupon_count,0)+nvl(1d_ago.order_coupon_count,0),nvl(old.order_coupon_reduce_amount,0.0)+nvl(1d_ago.order_coupon_reduce_amount,0.0),nvl(old.order_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0),nvl(old.order_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0),if(old.payment_date_first is null and 1d_ago.payment_count>0, '$do_date', old.payment_date_first),if(1d_ago.payment_count>0,'$do_date',old.payment_date_last),nvl(1d_ago.payment_count,0),nvl(1d_ago.payment_amount,0.0),nvl(old.payment_last_7d_count,0)+nvl(1d_ago.payment_count,0)-nvl(7d_ago.payment_count,0),nvl(old.payment_last_7d_amount,0.0)+nvl(1d_ago.payment_amount,0.0)-nvl(7d_ago.payment_amount,0.0),nvl(old.payment_last_30d_count,0)+nvl(1d_ago.payment_count,0)-nvl(30d_ago.payment_count,0),nvl(old.payment_last_30d_amount,0.0)+nvl(1d_ago.payment_amount,0.0)- nvl(30d_ago.payment_amount,0.0),nvl(old.payment_count,0)+nvl(1d_ago.payment_count,0),nvl(old.payment_amount,0.0)+nvl(1d_ago.payment_amount,0.0),nvl(1d_ago.refund_order_count,0),nvl(1d_ago.refund_order_num,0),nvl(1d_ago.refund_order_amount,0.0),nvl(old.refund_order_last_7d_count,0)+nvl(1d_ago.refund_order_count,0)- nvl(7d_ago.refund_order_count,0),nvl(old.refund_order_last_7d_num,0)+nvl(1d_ago.refund_order_num, 0)- nvl(7d_ago.refund_order_num,0),nvl(old.refund_order_last_7d_amount,0.0)+ nvl(1d_ago.refund_order_amount,0.0)- nvl(7d_ago.refund_order_amount,0.0),nvl(old.refund_order_last_30d_count,0)+nvl(1d_ago.refund_order_count,0)- nvl(30d_ago.refund_order_count,0),nvl(old.refund_order_last_30d_num,0)+nvl(1d_ago.refund_order_num, 0)- nvl(30d_ago.refund_order_num,0),nvl(old.refund_order_last_30d_amount,0.0)+ nvl(1d_ago.refund_order_amount,0.0)- nvl(30d_ago.refund_order_amount,0.0),nvl(old.refund_order_count,0)+nvl(1d_ago.refund_order_count,0),nvl(old.refund_order_num,0)+nvl(1d_ago.refund_order_num,0),nvl(old.refund_order_amount,0.0)+ nvl(1d_ago.refund_order_amount,0.0),nvl(1d_ago.refund_payment_count,0),nvl(1d_ago.refund_payment_num,0),nvl(1d_ago.refund_payment_amount,0.0),nvl(old.refund_payment_last_7d_count,0)+nvl(1d_ago.refund_payment_count,0)-nvl(7d_ago.refund_payment_count,0),nvl(old.refund_payment_last_7d_num,0)+nvl(1d_ago.refund_payment_num,0)- nvl(7d_ago.refund_payment_num,0),nvl(old.refund_payment_last_7d_amount,0.0)+ nvl(1d_ago.refund_payment_amount,0.0)- nvl(7d_ago.refund_payment_amount,0.0),nvl(old.refund_payment_last_30d_count,0)+nvl(1d_ago.refund_payment_count,0)-nvl(30d_ago.refund_payment_count,0),nvl(old.refund_payment_last_30d_num,0)+nvl(1d_ago.refund_payment_num,0)- nvl(30d_ago.refund_payment_num,0),nvl(old.refund_payment_last_30d_amount,0.0)+ nvl(1d_ago.refund_payment_amount,0.0)- nvl(30d_ago.refund_payment_amount,0.0),nvl(old.refund_payment_count,0)+nvl(1d_ago.refund_payment_count,0),nvl(old.refund_payment_num,0)+nvl(1d_ago.refund_payment_num,0),nvl(old.refund_payment_amount,0.0)+nvl(1d_ago.refund_payment_amount,0.0),nvl(1d_ago.cart_count,0),nvl(old.cart_last_7d_count,0)+nvl(1d_ago.cart_count,0)-nvl(7d_ago.cart_count,0),nvl(old.cart_last_30d_count,0)+nvl(1d_ago.cart_count,0)-nvl(30d_ago.cart_count,0),nvl(old.cart_count,0)+nvl(1d_ago.cart_count,0),nvl(1d_ago.favor_count,0),nvl(old.favor_last_7d_count,0)+nvl(1d_ago.favor_count,0)- nvl(7d_ago.favor_count,0),nvl(old.favor_last_30d_count,0)+nvl(1d_ago.favor_count,0)- nvl(30d_ago.favor_count,0),nvl(old.favor_count,0)+nvl(1d_ago.favor_count,0),nvl(1d_ago.coupon_get_count,0),nvl(1d_ago.coupon_using_count,0),nvl(1d_ago.coupon_used_count,0),nvl(old.coupon_last_7d_get_count,0)+nvl(1d_ago.coupon_get_count,0)- nvl(7d_ago.coupon_get_count,0),nvl(old.coupon_last_7d_using_count,0)+nvl(1d_ago.coupon_using_count,0)- nvl(7d_ago.coupon_using_count,0),nvl(old.coupon_last_7d_used_count,0)+ nvl(1d_ago.coupon_used_count,0)- nvl(7d_ago.coupon_used_count,0),nvl(old.coupon_last_30d_get_count,0)+nvl(1d_ago.coupon_get_count,0)- nvl(30d_ago.coupon_get_count,0),nvl(old.coupon_last_30d_using_count,0)+nvl(1d_ago.coupon_using_count,0)- nvl(30d_ago.coupon_using_count,0),nvl(old.coupon_last_30d_used_count,0)+ nvl(1d_ago.coupon_used_count,0)- nvl(30d_ago.coupon_used_count,0),nvl(old.coupon_get_count,0)+nvl(1d_ago.coupon_get_count,0),nvl(old.coupon_using_count,0)+nvl(1d_ago.coupon_using_count,0),nvl(old.coupon_used_count,0)+nvl(1d_ago.coupon_used_count,0),nvl(1d_ago.appraise_good_count,0),nvl(1d_ago.appraise_mid_count,0),nvl(1d_ago.appraise_bad_count,0),nvl(old.appraise_last_7d_default_count,0)+nvl(1d_ago.appraise_default_count,0)-nvl(7d_ago.appraise_default_count,0),nvl(old.appraise_last_7d_good_count,0)+nvl(1d_ago.appraise_good_count,0)- nvl(7d_ago.appraise_good_count,0),nvl(old.appraise_last_7d_mid_count,0)+nvl(1d_ago.appraise_mid_count,0)-nvl(7d_ago.appraise_mid_count,0),nvl(old.appraise_last_7d_bad_count,0)+nvl(1d_ago.appraise_bad_count,0)-nvl(7d_ago.appraise_bad_count,0),nvl(old.appraise_last_7d_default_count,0)+nvl(1d_ago.appraise_default_count,0)-nvl(7d_ago.appraise_default_count,0),nvl(old.appraise_last_30d_good_count,0)+nvl(1d_ago.appraise_good_count,0)- nvl(30d_ago.appraise_good_count,0),nvl(old.appraise_last_30d_mid_count,0)+nvl(1d_ago.appraise_mid_count,0)-nvl(30d_ago.appraise_mid_count,0),nvl(old.appraise_last_30d_bad_count,0)+nvl(1d_ago.appraise_bad_count,0)-nvl(30d_ago.appraise_bad_count,0),nvl(old.appraise_last_30d_default_count,0)+nvl(1d_ago.appraise_default_count,0)-nvl(30d_ago.appraise_default_count,0),nvl(old.appraise_good_count,0)+nvl(1d_ago.appraise_good_count,0),nvl(old.appraise_mid_count,0)+nvl(1d_ago.appraise_mid_count, 0),nvl(old.appraise_bad_count,0)+nvl(1d_ago.appraise_bad_count,0),nvl(old.appraise_default_count,0)+nvl(1d_ago.appraise_default_count,0)
from
(selectuser_id,login_date_first,login_date_last,login_date_1d_count,login_last_1d_day_count,login_last_7d_count,login_last_7d_day_count,login_last_30d_count,login_last_30d_day_count,login_count,login_day_count,order_date_first,order_date_last,order_last_1d_count,order_activity_last_1d_count,order_activity_reduce_last_1d_amount,order_coupon_last_1d_count,order_coupon_reduce_last_1d_amount,order_last_1d_original_amount,order_last_1d_final_amount,order_last_7d_count,order_activity_last_7d_count,order_activity_reduce_last_7d_amount,order_coupon_last_7d_count,order_coupon_reduce_last_7d_amount,order_last_7d_original_amount,order_last_7d_final_amount,order_last_30d_count,order_activity_last_30d_count,order_activity_reduce_last_30d_amount,order_coupon_last_30d_count,order_coupon_reduce_last_30d_amount,order_last_30d_original_amount,order_last_30d_final_amount,order_count,order_activity_count,order_activity_reduce_amount,order_coupon_count,order_coupon_reduce_amount,order_original_amount,order_final_amount,payment_date_first,payment_date_last,payment_last_1d_count,payment_last_1d_amount,payment_last_7d_count,payment_last_7d_amount,payment_last_30d_count,payment_last_30d_amount,payment_count,payment_amount,refund_order_last_1d_count,refund_order_last_1d_num,refund_order_last_1d_amount,refund_order_last_7d_count,refund_order_last_7d_num,refund_order_last_7d_amount,refund_order_last_30d_count,refund_order_last_30d_num,refund_order_last_30d_amount,refund_order_count,refund_order_num,refund_order_amount,refund_payment_last_1d_count,refund_payment_last_1d_num,refund_payment_last_1d_amount,refund_payment_last_7d_count,refund_payment_last_7d_num,refund_payment_last_7d_amount,refund_payment_last_30d_count,refund_payment_last_30d_num,refund_payment_last_30d_amount,refund_payment_count,refund_payment_num,refund_payment_amount,cart_last_1d_count,cart_last_7d_count,cart_last_30d_count,cart_count,favor_last_1d_count,favor_last_7d_count,favor_last_30d_count,favor_count,coupon_last_1d_get_count,coupon_last_1d_using_count,coupon_last_1d_used_count,coupon_last_7d_get_count,coupon_last_7d_using_count,coupon_last_7d_used_count,coupon_last_30d_get_count,coupon_last_30d_using_count,coupon_last_30d_used_count,coupon_get_count,coupon_using_count,coupon_used_count,appraise_last_1d_good_count,appraise_last_1d_mid_count,appraise_last_1d_bad_count,appraise_last_1d_default_count,appraise_last_7d_good_count,appraise_last_7d_mid_count,appraise_last_7d_bad_count,appraise_last_7d_default_count,appraise_last_30d_good_count,appraise_last_30d_mid_count,appraise_last_30d_bad_count,appraise_last_30d_default_count,appraise_good_count,appraise_mid_count,appraise_bad_count,appraise_default_countfrom ${APP}.dwt_user_topicwhere dt=date_add('$do_date',-1)
)old
full outer join
(selectuser_id,login_count,cart_count,favor_count,order_count,order_activity_count,order_activity_reduce_amount,order_coupon_count,order_coupon_reduce_amount,order_original_amount,order_final_amount,payment_count,payment_amount,refund_order_count,refund_order_num,refund_order_amount,refund_payment_count,refund_payment_num,refund_payment_amount,coupon_get_count,coupon_using_count,coupon_used_count,appraise_good_count,appraise_mid_count,appraise_bad_count,appraise_default_countfrom ${APP}.dws_user_action_daycountwhere dt='$do_date'
)1d_ago
on old.user_id=1d_ago.user_id
left join
(selectuser_id,login_count,cart_count,favor_count,order_count,order_activity_count,order_activity_reduce_amount,order_coupon_count,order_coupon_reduce_amount,order_original_amount,order_final_amount,payment_count,payment_amount,refund_order_count,refund_order_num,refund_order_amount,refund_payment_count,refund_payment_num,refund_payment_amount,coupon_get_count,coupon_using_count,coupon_used_count,appraise_good_count,appraise_mid_count,appraise_bad_count,appraise_default_countfrom ${APP}.dws_user_action_daycountwhere dt=date_add('$do_date',-7)
)7d_ago
on old.user_id=7d_ago.user_id
left join
(selectuser_id,login_count,cart_count,favor_count,order_count,order_activity_count,order_activity_reduce_amount,order_coupon_count,order_coupon_reduce_amount,order_original_amount,order_final_amount,payment_count,payment_amount,refund_order_count,refund_order_num,refund_order_amount,refund_payment_count,refund_payment_num,refund_payment_amount,coupon_get_count,coupon_using_count,coupon_used_count,appraise_good_count,appraise_mid_count,appraise_bad_count,appraise_default_countfrom ${APP}.dws_user_action_daycountwhere dt=date_add('$do_date',-30)
)30d_ago
on old.user_id=30d_ago.user_id;
alter table ${APP}.dwt_user_topic drop partition(dt='$clear_date');
"dwt_sku_topic="
insert overwrite table ${APP}.dwt_sku_topic partition(dt='$do_date')
selectnvl(1d_ago.sku_id,old.sku_id),nvl(1d_ago.order_count,0),nvl(1d_ago.order_num,0),nvl(1d_ago.order_activity_count,0),nvl(1d_ago.order_coupon_count,0),nvl(1d_ago.order_activity_reduce_amount,0.0),nvl(1d_ago.order_coupon_reduce_amount,0.0),nvl(1d_ago.order_original_amount,0.0),nvl(1d_ago.order_final_amount,0.0),nvl(old.order_last_7d_count,0)+nvl(1d_ago.order_count,0)- nvl(7d_ago.order_count,0),nvl(old.order_last_7d_num,0)+nvl(1d_ago.order_num,0)- nvl(7d_ago.order_num,0),nvl(old.order_activity_last_7d_count,0)+nvl(1d_ago.order_activity_count,0)- nvl(7d_ago.order_activity_count,0),nvl(old.order_coupon_last_7d_count,0)+nvl(1d_ago.order_coupon_count,0)- nvl(7d_ago.order_coupon_count,0),nvl(old.order_activity_reduce_last_7d_amount,0.0)+nvl(1d_ago.order_activity_reduce_amount,0.0)- nvl(7d_ago.order_activity_reduce_amount,0.0),nvl(old.order_coupon_reduce_last_7d_amount,0.0)+nvl(1d_ago.order_coupon_reduce_amount,0.0)- nvl(7d_ago.order_coupon_reduce_amount,0.0),nvl(old.order_last_7d_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0)- nvl(7d_ago.order_original_amount,0.0),nvl(old.order_last_7d_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0)- nvl(7d_ago.order_final_amount,0.0),nvl(old.order_last_30d_count,0)+nvl(1d_ago.order_count,0)- nvl(30d_ago.order_count,0),nvl(old.order_last_30d_num,0)+nvl(1d_ago.order_num,0)- nvl(30d_ago.order_num,0),nvl(old.order_activity_last_30d_count,0)+nvl(1d_ago.order_activity_count,0)- nvl(30d_ago.order_activity_count,0),nvl(old.order_coupon_last_30d_count,0)+nvl(1d_ago.order_coupon_count,0)- nvl(30d_ago.order_coupon_count,0),nvl(old.order_activity_reduce_last_30d_amount,0.0)+nvl(1d_ago.order_activity_reduce_amount,0.0)- nvl(30d_ago.order_activity_reduce_amount,0.0),nvl(old.order_coupon_reduce_last_30d_amount,0.0)+nvl(1d_ago.order_coupon_reduce_amount,0.0)- nvl(30d_ago.order_coupon_reduce_amount,0.0),nvl(old.order_last_30d_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0)- nvl(30d_ago.order_original_amount,0.0),nvl(old.order_last_30d_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0)- nvl(30d_ago.order_final_amount,0.0),nvl(old.order_count,0)+nvl(1d_ago.order_count,0),nvl(old.order_num,0)+nvl(1d_ago.order_num,0),nvl(old.order_activity_count,0)+nvl(1d_ago.order_activity_count,0),nvl(old.order_coupon_count,0)+nvl(1d_ago.order_coupon_count,0),nvl(old.order_activity_reduce_amount,0.0)+nvl(1d_ago.order_activity_reduce_amount,0.0),nvl(old.order_coupon_reduce_amount,0.0)+nvl(1d_ago.order_coupon_reduce_amount,0.0),nvl(old.order_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0),nvl(old.order_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0),nvl(1d_ago.payment_count,0),nvl(1d_ago.payment_num,0),nvl(1d_ago.payment_amount,0.0),nvl(old.payment_last_7d_count,0)+nvl(1d_ago.payment_count,0)- nvl(7d_ago.payment_count,0),nvl(old.payment_last_7d_num,0)+nvl(1d_ago.payment_num,0)- nvl(7d_ago.payment_num,0),nvl(old.payment_last_7d_amount,0.0)+nvl(1d_ago.payment_amount,0.0)- nvl(7d_ago.payment_amount,0.0),nvl(old.payment_last_30d_count,0)+nvl(1d_ago.payment_count,0)- nvl(30d_ago.payment_count,0),nvl(old.payment_last_30d_num,0)+nvl(1d_ago.payment_num,0)- nvl(30d_ago.payment_num,0),nvl(old.payment_last_30d_amount,0.0)+nvl(1d_ago.payment_amount,0.0)- nvl(30d_ago.payment_amount,0.0),nvl(old.payment_count,0)+nvl(1d_ago.payment_count,0),nvl(old.payment_num,0)+nvl(1d_ago.payment_num,0),nvl(old.payment_amount,0.0)+nvl(1d_ago.payment_amount,0.0),nvl(old.refund_order_last_1d_count,0)+nvl(1d_ago.refund_order_count,0)- nvl(1d_ago.refund_order_count,0),nvl(old.refund_order_last_1d_num,0)+nvl(1d_ago.refund_order_num,0)- nvl(1d_ago.refund_order_num,0),nvl(old.refund_order_last_1d_amount,0.0)+nvl(1d_ago.refund_order_amount,0.0)- nvl(1d_ago.refund_order_amount,0.0),nvl(old.refund_order_last_7d_count,0)+nvl(1d_ago.refund_order_count,0)- nvl(7d_ago.refund_order_count,0),nvl(old.refund_order_last_7d_num,0)+nvl(1d_ago.refund_order_num,0)- nvl(7d_ago.refund_order_num,0),nvl(old.refund_order_last_7d_amount,0.0)+nvl(1d_ago.refund_order_amount,0.0)- nvl(7d_ago.refund_order_amount,0.0),nvl(old.refund_order_last_30d_count,0)+nvl(1d_ago.refund_order_count,0)- nvl(30d_ago.refund_order_count,0),nvl(old.refund_order_last_30d_num,0)+nvl(1d_ago.refund_order_num,0)- nvl(30d_ago.refund_order_num,0),nvl(old.refund_order_last_30d_amount,0.0)+nvl(1d_ago.refund_order_amount,0.0)- nvl(30d_ago.refund_order_amount,0.0),nvl(old.refund_order_count,0)+nvl(1d_ago.refund_order_count,0),nvl(old.refund_order_num,0)+nvl(1d_ago.refund_order_num,0),nvl(old.refund_order_amount,0.0)+nvl(1d_ago.refund_order_amount,0.0),nvl(1d_ago.refund_payment_count,0),nvl(1d_ago.refund_payment_num,0),nvl(1d_ago.refund_payment_amount,0.0),nvl(old.refund_payment_last_7d_count,0)+nvl(1d_ago.refund_payment_count,0)- nvl(7d_ago.refund_payment_count,0),nvl(old.refund_payment_last_7d_num,0)+nvl(1d_ago.refund_payment_num,0)- nvl(7d_ago.refund_payment_num,0),nvl(old.refund_payment_last_7d_amount,0.0)+nvl(1d_ago.refund_payment_amount,0.0)- nvl(7d_ago.refund_payment_amount,0.0),nvl(old.refund_payment_last_30d_count,0)+nvl(1d_ago.refund_payment_count,0)- nvl(30d_ago.refund_payment_count,0),nvl(old.refund_payment_last_30d_num,0)+nvl(1d_ago.refund_payment_num,0)- nvl(30d_ago.refund_payment_num,0),nvl(old.refund_payment_last_30d_amount,0.0)+nvl(1d_ago.refund_payment_amount,0.0)- nvl(30d_ago.refund_payment_amount,0.0),nvl(old.refund_payment_count,0)+nvl(1d_ago.refund_payment_count,0),nvl(old.refund_payment_num,0)+nvl(1d_ago.refund_payment_num,0),nvl(old.refund_payment_amount,0.0)+nvl(1d_ago.refund_payment_amount,0.0),nvl(1d_ago.cart_count,0),nvl(old.cart_last_7d_count,0)+nvl(1d_ago.cart_count,0)- nvl(7d_ago.cart_count,0),nvl(old.cart_last_30d_count,0)+nvl(1d_ago.cart_count,0)- nvl(30d_ago.cart_count,0),nvl(old.cart_count,0)+nvl(1d_ago.cart_count,0),nvl(1d_ago.favor_count,0),nvl(old.favor_last_7d_count,0)+nvl(1d_ago.favor_count,0)- nvl(7d_ago.favor_count,0),nvl(old.favor_last_30d_count,0)+nvl(1d_ago.favor_count,0)- nvl(30d_ago.favor_count,0),nvl(old.favor_count,0)+nvl(1d_ago.favor_count,0),nvl(1d_ago.appraise_good_count,0),nvl(1d_ago.appraise_mid_count,0),nvl(1d_ago.appraise_bad_count,0),nvl(1d_ago.appraise_default_count,0),nvl(old.appraise_last_7d_good_count,0)+nvl(1d_ago.appraise_good_count,0)- nvl(7d_ago.appraise_good_count,0),nvl(old.appraise_last_7d_mid_count,0)+nvl(1d_ago.appraise_mid_count,0)- nvl(7d_ago.appraise_mid_count,0),nvl(old.appraise_last_7d_bad_count,0)+nvl(1d_ago.appraise_bad_count,0)- nvl(7d_ago.appraise_bad_count,0),nvl(old.appraise_last_7d_default_count,0)+nvl(1d_ago.appraise_default_count,0)- nvl(7d_ago.appraise_default_count,0),nvl(old.appraise_last_30d_good_count,0)+nvl(1d_ago.appraise_good_count,0)- nvl(30d_ago.appraise_good_count,0),nvl(old.appraise_last_30d_mid_count,0)+nvl(1d_ago.appraise_mid_count,0)- nvl(30d_ago.appraise_mid_count,0),nvl(old.appraise_last_30d_bad_count,0)+nvl(1d_ago.appraise_bad_count,0)- nvl(30d_ago.appraise_bad_count,0),nvl(old.appraise_last_30d_default_count,0)+nvl(1d_ago.appraise_default_count,0)- nvl(30d_ago.appraise_default_count,0),nvl(old.appraise_good_count,0)+nvl(1d_ago.appraise_good_count,0),nvl(old.appraise_mid_count,0)+nvl(1d_ago.appraise_mid_count,0),nvl(old.appraise_bad_count,0)+nvl(1d_ago.appraise_bad_count,0),nvl(old.appraise_default_count,0)+nvl(1d_ago.appraise_default_count,0)
from
(selectsku_id,order_last_1d_count,order_last_1d_num,order_activity_last_1d_count,order_coupon_last_1d_count,order_activity_reduce_last_1d_amount,order_coupon_reduce_last_1d_amount,order_last_1d_original_amount,order_last_1d_final_amount,order_last_7d_count,order_last_7d_num,order_activity_last_7d_count,order_coupon_last_7d_count,order_activity_reduce_last_7d_amount,order_coupon_reduce_last_7d_amount,order_last_7d_original_amount,order_last_7d_final_amount,order_last_30d_count,order_last_30d_num,order_activity_last_30d_count,order_coupon_last_30d_count,order_activity_reduce_last_30d_amount,order_coupon_reduce_last_30d_amount,order_last_30d_original_amount,order_last_30d_final_amount,order_count,order_num,order_activity_count,order_coupon_count,order_activity_reduce_amount,order_coupon_reduce_amount,order_original_amount,order_final_amount,payment_last_1d_count,payment_last_1d_num,payment_last_1d_amount,payment_last_7d_count,payment_last_7d_num,payment_last_7d_amount,payment_last_30d_count,payment_last_30d_num,payment_last_30d_amount,payment_count,payment_num,payment_amount,refund_order_last_1d_count,refund_order_last_1d_num,refund_order_last_1d_amount,refund_order_last_7d_count,refund_order_last_7d_num,refund_order_last_7d_amount,refund_order_last_30d_count,refund_order_last_30d_num,refund_order_last_30d_amount,refund_order_count,refund_order_num,refund_order_amount,refund_payment_last_1d_count,refund_payment_last_1d_num,refund_payment_last_1d_amount,refund_payment_last_7d_count,refund_payment_last_7d_num,refund_payment_last_7d_amount,refund_payment_last_30d_count,refund_payment_last_30d_num,refund_payment_last_30d_amount,refund_payment_count,refund_payment_num,refund_payment_amount,cart_last_1d_count,cart_last_7d_count,cart_last_30d_count,cart_count,favor_last_1d_count,favor_last_7d_count,favor_last_30d_count,favor_count,appraise_last_1d_good_count,appraise_last_1d_mid_count,appraise_last_1d_bad_count,appraise_last_1d_default_count,appraise_last_7d_good_count,appraise_last_7d_mid_count,appraise_last_7d_bad_count,appraise_last_7d_default_count,appraise_last_30d_good_count,appraise_last_30d_mid_count,appraise_last_30d_bad_count,appraise_last_30d_default_count,appraise_good_count,appraise_mid_count,appraise_bad_count,appraise_default_countfrom ${APP}.dwt_sku_topicwhere dt=date_add('$do_date',-1)
)old
full outer join
(selectsku_id,order_count,order_num,order_activity_count,order_coupon_count,order_activity_reduce_amount,order_coupon_reduce_amount,order_original_amount,order_final_amount,payment_count,payment_num,payment_amount,refund_order_count,refund_order_num,refund_order_amount,refund_payment_count,refund_payment_num,refund_payment_amount,cart_count,favor_count,appraise_good_count,appraise_mid_count,appraise_bad_count,appraise_default_countfrom ${APP}.dws_sku_action_daycountwhere dt='$do_date'
)1d_ago
on old.sku_id=1d_ago.sku_id
left join
(selectsku_id,order_count,order_num,order_activity_count,order_coupon_count,order_activity_reduce_amount,order_coupon_reduce_amount,order_original_amount,order_final_amount,payment_count,payment_num,payment_amount,refund_order_count,refund_order_num,refund_order_amount,refund_payment_count,refund_payment_num,refund_payment_amount,cart_count,favor_count,appraise_good_count,appraise_mid_count,appraise_bad_count,appraise_default_countfrom ${APP}.dws_sku_action_daycountwhere dt=date_add('$do_date',-7)
)7d_ago
on old.sku_id=7d_ago.sku_id
left join
(selectsku_id,order_count,order_num,order_activity_count,order_coupon_count,order_activity_reduce_amount,order_coupon_reduce_amount,order_original_amount,order_final_amount,payment_count,payment_num,payment_amount,refund_order_count,refund_order_num,refund_order_amount,refund_payment_count,refund_payment_num,refund_payment_amount,cart_count,favor_count,appraise_good_count,appraise_mid_count,appraise_bad_count,appraise_default_countfrom ${APP}.dws_sku_action_daycountwhere dt=date_add('$do_date',-30)
)30d_ago
on old.sku_id=30d_ago.sku_id;
alter table ${APP}.dwt_sku_topic drop partition(dt='$clear_date');
"dwt_activity_topic="
insert overwrite table ${APP}.dwt_activity_topic partition(dt='$do_date')
selectnvl(1d_ago.activity_rule_id,old.activity_rule_id),nvl(1d_ago.activity_id,old.activity_id),nvl(1d_ago.order_count,0),nvl(1d_ago.order_reduce_amount,0.0),nvl(1d_ago.order_original_amount,0.0),nvl(1d_ago.order_final_amount,0.0),nvl(old.order_count,0)+nvl(1d_ago.order_count,0),nvl(old.order_reduce_amount,0.0)+nvl(1d_ago.order_reduce_amount,0.0),nvl(old.order_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0),nvl(old.order_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0),nvl(1d_ago.payment_count,0),nvl(1d_ago.payment_reduce_amount,0.0),nvl(1d_ago.payment_amount,0.0),nvl(old.payment_count,0)+nvl(1d_ago.payment_count,0),nvl(old.payment_reduce_amount,0.0)+nvl(1d_ago.payment_reduce_amount,0.0),nvl(old.payment_amount,0.0)+nvl(1d_ago.payment_amount,0.0)
from
(selectactivity_rule_id,activity_id,order_count,order_reduce_amount,order_original_amount,order_final_amount,payment_count,payment_reduce_amount,payment_amountfrom ${APP}.dwt_activity_topicwhere dt=date_add('$do_date',-1)
)old
full outer join
(selectactivity_rule_id,activity_id,order_count,order_reduce_amount,order_original_amount,order_final_amount,payment_count,payment_reduce_amount,payment_amountfrom ${APP}.dws_activity_info_daycountwhere dt='$do_date'
)1d_ago
on old.activity_rule_id=1d_ago.activity_rule_id;
alter table ${APP}.dwt_activity_topic drop partition(dt='$clear_date');
"dwt_coupon_topic="
insert overwrite table ${APP}.dwt_coupon_topic partition(dt='$do_date')
selectnvl(1d_ago.coupon_id,old.coupon_id),nvl(1d_ago.get_count,0),nvl(old.get_last_7d_count,0)+nvl(1d_ago.get_count,0)- nvl(7d_ago.get_count,0),nvl(old.get_last_30d_count,0)+nvl(1d_ago.get_count,0)- nvl(30d_ago.get_count,0),nvl(old.get_count,0)+nvl(1d_ago.get_count,0),nvl(1d_ago.order_count,0),nvl(1d_ago.order_reduce_amount,0.0),nvl(1d_ago.order_original_amount,0.0),nvl(1d_ago.order_final_amount,0.0),nvl(old.order_last_7d_count,0)+nvl(1d_ago.order_count,0)- nvl(7d_ago.order_count,0),nvl(old.order_last_7d_reduce_amount,0.0)+nvl(1d_ago.order_reduce_amount,0.0)- nvl(7d_ago.order_reduce_amount,0.0),nvl(old.order_last_7d_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0)- nvl(7d_ago.order_original_amount,0.0),nvl(old.order_last_7d_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0)- nvl(7d_ago.order_final_amount,0.0),nvl(old.order_last_30d_count,0)+nvl(1d_ago.order_count,0)- nvl(30d_ago.order_count,0),nvl(old.order_last_30d_reduce_amount,0.0)+nvl(1d_ago.order_reduce_amount,0.0)- nvl(30d_ago.order_reduce_amount,0.0),nvl(old.order_last_30d_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0)- nvl(30d_ago.order_original_amount,0.0),nvl(old.order_last_30d_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0)- nvl(30d_ago.order_final_amount,0.0),nvl(old.order_count,0)+nvl(1d_ago.order_count,0),nvl(old.order_reduce_amount,0.0)+nvl(1d_ago.order_reduce_amount,0.0),nvl(old.order_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0),nvl(old.order_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0),nvl(old.payment_last_1d_count,0)+nvl(1d_ago.payment_count,0)- nvl(1d_ago.payment_count,0),nvl(old.payment_last_1d_reduce_amount,0.0)+nvl(1d_ago.payment_reduce_amount,0.0)- nvl(1d_ago.payment_reduce_amount,0.0),nvl(old.payment_last_1d_amount,0.0)+nvl(1d_ago.payment_amount,0.0)- nvl(1d_ago.payment_amount,0.0),nvl(old.payment_last_7d_count,0)+nvl(1d_ago.payment_count,0)- nvl(7d_ago.payment_count,0),nvl(old.payment_last_7d_reduce_amount,0.0)+nvl(1d_ago.payment_reduce_amount,0.0)- nvl(7d_ago.payment_reduce_amount,0.0),nvl(old.payment_last_7d_amount,0.0)+nvl(1d_ago.payment_amount,0.0)- nvl(7d_ago.payment_amount,0.0),nvl(old.payment_last_30d_count,0)+nvl(1d_ago.payment_count,0)- nvl(30d_ago.payment_count,0),nvl(old.payment_last_30d_reduce_amount,0.0)+nvl(1d_ago.payment_reduce_amount,0.0)- nvl(30d_ago.payment_reduce_amount,0.0),nvl(old.payment_last_30d_amount,0.0)+nvl(1d_ago.payment_amount,0.0)- nvl(30d_ago.payment_amount,0.0),nvl(old.payment_count,0)+nvl(1d_ago.payment_count,0),nvl(old.payment_reduce_amount,0.0)+nvl(1d_ago.payment_reduce_amount,0.0),nvl(old.payment_amount,0.0)+nvl(1d_ago.payment_amount,0.0),nvl(1d_ago.expire_count,0),nvl(old.expire_last_7d_count,0)+nvl(1d_ago.expire_count,0)- nvl(7d_ago.expire_count,0),nvl(old.expire_last_30d_count,0)+nvl(1d_ago.expire_count,0)- nvl(30d_ago.expire_count,0),nvl(old.expire_count,0)+nvl(1d_ago.expire_count,0)
from
(selectcoupon_id,get_last_1d_count,get_last_7d_count,get_last_30d_count,get_count,order_last_1d_count,order_last_1d_reduce_amount,order_last_1d_original_amount,order_last_1d_final_amount,order_last_7d_count,order_last_7d_reduce_amount,order_last_7d_original_amount,order_last_7d_final_amount,order_last_30d_count,order_last_30d_reduce_amount,order_last_30d_original_amount,order_last_30d_final_amount,order_count,order_reduce_amount,order_original_amount,order_final_amount,payment_last_1d_count,payment_last_1d_reduce_amount,payment_last_1d_amount,payment_last_7d_count,payment_last_7d_reduce_amount,payment_last_7d_amount,payment_last_30d_count,payment_last_30d_reduce_amount,payment_last_30d_amount,payment_count,payment_reduce_amount,payment_amount,expire_last_1d_count,expire_last_7d_count,expire_last_30d_count,expire_countfrom ${APP}.dwt_coupon_topicwhere dt=date_add('$do_date',-1)
)old
full outer join
(selectcoupon_id,get_count,order_count,order_reduce_amount,order_original_amount,order_final_amount,payment_count,payment_reduce_amount,payment_amount,expire_countfrom ${APP}.dws_coupon_info_daycountwhere dt='$do_date'
)1d_ago
on old.coupon_id=1d_ago.coupon_id
left join
(selectcoupon_id,get_count,order_count,order_reduce_amount,order_original_amount,order_final_amount,payment_count,payment_reduce_amount,payment_amount,expire_countfrom ${APP}.dws_coupon_info_daycountwhere dt=date_add('$do_date',-7)
)7d_ago
on old.coupon_id=7d_ago.coupon_id
left join
(selectcoupon_id,get_count,order_count,order_reduce_amount,order_original_amount,order_final_amount,payment_count,payment_reduce_amount,payment_amount,expire_countfrom ${APP}.dws_coupon_info_daycountwhere dt=date_add('$do_date',-30)
)30d_ago
on old.coupon_id=30d_ago.coupon_id;
alter table ${APP}.dwt_coupon_topic drop partition(dt='$clear_date');
"dwt_area_topic="
insert overwrite table ${APP}.dwt_area_topic partition(dt='$do_date')
selectnvl(old.province_id, 1d_ago.province_id),nvl(1d_ago.visit_count,0),nvl(1d_ago.login_count,0),nvl(old.visit_last_7d_count,0)+nvl(1d_ago.visit_count,0)- nvl(7d_ago.visit_count,0),nvl(old.login_last_7d_count,0)+nvl(1d_ago.login_count,0)- nvl(7d_ago.login_count,0),nvl(old.visit_last_30d_count,0)+nvl(1d_ago.visit_count,0)- nvl(30d_ago.visit_count,0),nvl(old.login_last_30d_count,0)+nvl(1d_ago.login_count,0)- nvl(30d_ago.login_count,0),nvl(old.visit_count,0)+nvl(1d_ago.visit_count,0),nvl(old.login_count,0)+nvl(1d_ago.login_count,0),nvl(1d_ago.order_count,0),nvl(1d_ago.order_original_amount,0.0),nvl(1d_ago.order_final_amount,0.0),nvl(old.order_last_7d_count,0)+nvl(1d_ago.order_count,0)- nvl(7d_ago.order_count,0),nvl(old.order_last_7d_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0)- nvl(7d_ago.order_original_amount,0.0),nvl(old.order_last_7d_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0)- nvl(7d_ago.order_final_amount,0.0),nvl(old.order_last_30d_count,0)+nvl(1d_ago.order_count,0)- nvl(30d_ago.order_count,0),nvl(old.order_last_30d_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0)- nvl(30d_ago.order_original_amount,0.0),nvl(old.order_last_30d_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0)- nvl(30d_ago.order_final_amount,0.0),nvl(old.order_count,0)+nvl(1d_ago.order_count,0),nvl(old.order_original_amount,0.0)+nvl(1d_ago.order_original_amount,0.0),nvl(old.order_final_amount,0.0)+nvl(1d_ago.order_final_amount,0.0),nvl(1d_ago.payment_count,0),nvl(1d_ago.payment_amount,0.0),nvl(old.payment_last_7d_count,0)+nvl(1d_ago.payment_count,0)- nvl(7d_ago.payment_count,0),nvl(old.payment_last_7d_amount,0.0)+nvl(1d_ago.payment_amount,0.0)- nvl(7d_ago.payment_amount,0.0),nvl(old.payment_last_30d_count,0)+nvl(1d_ago.payment_count,0)- nvl(30d_ago.payment_count,0),nvl(old.payment_last_30d_amount,0.0)+nvl(1d_ago.payment_amount,0.0)- nvl(30d_ago.payment_amount,0.0),nvl(old.payment_count,0)+nvl(1d_ago.payment_count,0),nvl(old.payment_amount,0.0)+nvl(1d_ago.payment_amount,0.0),nvl(1d_ago.refund_order_count,0),nvl(1d_ago.refund_order_amount,0.0),nvl(old.refund_order_last_7d_count,0)+nvl(1d_ago.refund_order_count,0)- nvl(7d_ago.refund_order_count,0),nvl(old.refund_order_last_7d_amount,0.0)+nvl(1d_ago.refund_order_amount,0.0)- nvl(7d_ago.refund_order_amount,0.0),nvl(old.refund_order_last_30d_count,0)+nvl(1d_ago.refund_order_count,0)- nvl(30d_ago.refund_order_count,0),nvl(old.refund_order_last_30d_amount,0.0)+nvl(1d_ago.refund_order_amount,0.0)- nvl(30d_ago.refund_order_amount,0.0),nvl(old.refund_order_count,0)+nvl(1d_ago.refund_order_count,0),nvl(old.refund_order_amount,0.0)+nvl(1d_ago.refund_order_amount,0.0),nvl(1d_ago.refund_payment_count,0),nvl(1d_ago.refund_payment_amount,0.0),nvl(old.refund_payment_last_7d_count,0)+nvl(1d_ago.refund_payment_count,0)- nvl(7d_ago.refund_payment_count,0),nvl(old.refund_payment_last_7d_amount,0.0)+nvl(1d_ago.refund_payment_amount,0.0)- nvl(7d_ago.refund_payment_amount,0.0),nvl(old.refund_payment_last_30d_count,0)+nvl(1d_ago.refund_payment_count,0)- nvl(30d_ago.refund_payment_count,0),nvl(old.refund_payment_last_30d_amount,0.0)+nvl(1d_ago.refund_payment_amount,0.0)- nvl(30d_ago.refund_payment_amount,0.0),nvl(old.refund_payment_count,0)+nvl(1d_ago.refund_payment_count,0),nvl(old.refund_payment_amount,0.0)+nvl(1d_ago.refund_payment_amount,0.0)from
(selectprovince_id,visit_last_1d_count,login_last_1d_count,visit_last_7d_count,login_last_7d_count,visit_last_30d_count,login_last_30d_count,visit_count,login_count,order_last_1d_count,order_last_1d_original_amount,order_last_1d_final_amount,order_last_7d_count,order_last_7d_original_amount,order_last_7d_final_amount,order_last_30d_count,order_last_30d_original_amount,order_last_30d_final_amount,order_count,order_original_amount,order_final_amount,payment_last_1d_count,payment_last_1d_amount,payment_last_7d_count,payment_last_7d_amount,payment_last_30d_count,payment_last_30d_amount,payment_count,payment_amount,refund_order_last_1d_count,refund_order_last_1d_amount,refund_order_last_7d_count,refund_order_last_7d_amount,refund_order_last_30d_count,refund_order_last_30d_amount,refund_order_count,refund_order_amount,refund_payment_last_1d_count,refund_payment_last_1d_amount,refund_payment_last_7d_count,refund_payment_last_7d_amount,refund_payment_last_30d_count,refund_payment_last_30d_amount,refund_payment_count,refund_payment_amountfrom ${APP}.dwt_area_topicwhere dt=date_add('$do_date',-1)
)old
full outer join
(selectprovince_id,visit_count,login_count,order_count,order_original_amount,order_final_amount,payment_count,payment_amount,refund_order_count,refund_order_amount,refund_payment_count,refund_payment_amountfrom ${APP}.dws_area_stats_daycountwhere dt='$do_date'
)1d_ago
on old.province_id=1d_ago.province_id
left join
(selectprovince_id,visit_count,login_count,order_count,order_original_amount,order_final_amount,payment_count,payment_amount,refund_order_count,refund_order_amount,refund_payment_count,refund_payment_amountfrom ${APP}.dws_area_stats_daycountwhere dt=date_add('$do_date',-7)
)7d_ago
on old.province_id= 7d_ago.province_id
left join
(selectprovince_id,visit_count,login_count,order_count,order_original_amount,order_final_amount,payment_count,payment_amount,refund_order_count,refund_order_amount,refund_payment_count,refund_payment_amountfrom ${APP}.dws_area_stats_daycountwhere dt=date_add('$do_date',-30)
)30d_ago
on old.province_id= 30d_ago.province_id;
alter table ${APP}.dwt_area_topic drop partition(dt='$clear_date');
"case $1 in"dwt_visitor_topic" )hive -e "$dwt_visitor_topic"hadoop fs -rm -r -f /warehouse/gmall/dwt/dwt_visitor_topic/dt=$clear_date;;"dwt_user_topic" )hive -e "$dwt_user_topic"hadoop fs -rm -r -f /warehouse/gmall/dwt/dwt_user_topic/dt=$clear_date;;"dwt_sku_topic" )hive -e "$dwt_sku_topic"hadoop fs -rm -r -f /warehouse/gmall/dwt/dwt_sku_topic/dt=$clear_date;;"dwt_activity_topic" )hive -e "$dwt_activity_topic"hadoop fs -rm -r -f /warehouse/gmall/dwt/dwt_activity_topic/dt=$clear_date;;"dwt_coupon_topic" )hive -e "$dwt_coupon_topic"hadoop fs -rm -r -f /warehouse/gmall/dwt/dwt_coupon_topic/dt=$clear_date;;"dwt_area_topic" )hive -e "$dwt_area_topic"hadoop fs -rm -r -f /warehouse/gmall/dwt/dwt_area_topic/dt=$clear_date;;"all" )hive -e "$dwt_visitor_topic$dwt_user_topic$dwt_sku_topic$dwt_activity_topic$dwt_coupon_topic$dwt_area_topic"hadoop fs -rm -r -f /warehouse/gmall/dwt/dwt_visitor_topic/dt=$clear_datehadoop fs -rm -r -f /warehouse/gmall/dwt/dwt_user_topic/dt=$clear_datehadoop fs -rm -r -f /warehouse/gmall/dwt/dwt_sku_topic/dt=$clear_datehadoop fs -rm -r -f /warehouse/gmall/dwt/dwt_activity_topic/dt=$clear_datehadoop fs -rm -r -f /warehouse/gmall/dwt/dwt_coupon_topic/dt=$clear_datehadoop fs -rm -r -f /warehouse/gmall/dwt/dwt_area_topic/dt=$clear_date;;
esac

3 脚本使用

chmod 777 dws_to_dwt.shdws_to_dwt.sh all 2020-06-14

【电商数仓】数仓搭建之数据主题(data warehouse topic-- DWT)层(DWT层之首日和每日数据导入脚本)相关推荐

  1. 数据仓库项目(第五节)数仓理论、电商业务数仓介绍与创建

    目录 数仓理论 表的分类 实体表 维度表 事务型事实表 周期型事实表 同步策略 实体表同步策略 维度表同步策略 事务型事实表同步策略 周期型事实表同步策略 范式理论 范式概念 函数依赖 三范式区分 关 ...

  2. 电商离线数仓项目实战(下)

    电商离线数仓项目实战(下) 电商分析--核心交易 文章目录 电商离线数仓项目实战(下) 电商分析--核心交易 一.业务需求 二.业务数据库表结构 1. 数据库表之间的联系 img 2. 业务数据库-- ...

  3. 电商离线数仓-业务数仓指标(GMV主题/转化率主题)

    GMV和转化率 GMV主题 GMV的概念 GMV表的创建 GMV表里导入数据 转化率 转化率概念 转化率表的创建 转化率表里导入数据 ADS层用户行为漏斗分析 GMV主题 GMV的概念 什么是GMV? ...

  4. 【电商数仓】数仓搭建之明细数据(data warehouse detail -- DWD)层(用户行为数据之曝光、错误日志表、数据加载脚本,业务数据之评价、订单事实表)

    文章目录 一 曝光日志表 1 思路解析 2 建表语句 3 数据导入 4 查看数据 二 错误日志表 1 思路解析 2 建表语句 3 数据导入 4 查看数据 三 DWD层用户行为数据加载脚本 四 DWD层 ...

  5. 【电商数仓】数仓搭建之明细数据(data warehouse detail -- DWD)层(业务数据之退单、加购、收藏、优惠券、支付、退款、订单事实表)

    文章目录 一 退单事实表(事务型事实表) 1 分区设计 2 建表语句 3 导入数据 (1)首日导入 (2)每日导入 二 加购事实表(周期型快照事实表,每日快照) 1 分区设计 2 建表语句 3 导入数 ...

  6. 电商数仓数仓环境搭建

    1.hive环境搭建 1.1.hive引擎简介 Hive引擎包括:默认MR.tez.spark Hive on Spark:Hive既作为存储元数据又负责SQL的解析优化,语法是HQL语法,执行引擎变 ...

  7. 大数据电商离线数仓项目-上篇

    下一篇:电商数仓项目-下篇 文章目录 第1章 数仓分层 1.1 为什么要分层 1.2 数据集市与数据仓库概念 1.3 数仓命名规范 1.3.1 表命名 1.3.2 脚本命名 1.3.3 表字段类型 第 ...

  8. 大数据电商离线数仓项目-下篇

    上一篇:电商数仓系统1 文章目录 第5章 数仓搭建-DWS层 5.1 业务术语 5.2 系统函数 5.2.1 nvl函数 5.2.2 日期处理函数 5.2.3 复杂数据类型定义 5.3 DWS层 5. ...

  9. 电商零售数仓建模之用户01:用户业务模型

    一.前言 数仓建模的成熟度在金融领域,尤其是银行.保险和证券行业得益于传统数据仓库服务厂商的推动,具有非常好的最佳实践,但是在互联网领域却从未形成真正的标准和规范.本文基于汽车电商零售领域的实践总结和 ...

最新文章

  1. c++ map iterator 获取key_前K个高频的元素衍生之Map的Value与Key排序
  2. double java 坑,Java中四则运算的那些坑
  3. wps android qq 群,手机WPS怎样发送文档给QQ?WPS怎样发送文档给QQ教程
  4. 多目标跟踪笔记二:Efficient Algorithms for Finding the K Best Paths Through a Trellis
  5. 流行病学数据分析基础:识别和控制混杂
  6. 关于Android C++的NDK环境搭建(Win7系统)
  7. DSB2017第一名代码尝试运行(记录自用)(五)
  8. 深圳市龙岗职业技术学校录取分数线计算机,深圳市龙岗区第二职业技术学校2021年招生录取分数线...
  9. jdbc 3种获得mysql插入数据的自增字段值的方法_JDBC 3种获得mysql插入数据的自增字段值的方法...
  10. bzoj 1069: [SCOI2007]最大土地面积(旋转卡壳)
  11. Android进阶笔记12:ListView篇之图片优化
  12. cmake中添加引用动态链接_C和C++使用对方编译的动态链接库
  13. 【狂神说Redis】3五大数据类型
  14. 医院时钟系统,NTP子钟,网络子母钟系统,ntp子母钟,网络子母钟——为您的系统保驾护航
  15. 代理模式简介与实现 - delegate
  16. word替换妙用:批量去除多余空格、空行、换行2020-11-30
  17. 【GitHub或GitLab rejected】error: failed to push some refs to,Updates were rejected...
  18. 写给工程师的 10 条精进原则
  19. 解决:ERROR kuhl m_privilege simple: Rtiadjustprivilege (20) c0000061
  20. LSTM模型的推导与实现

热门文章

  1. html 自动悬浮,HTML 悬浮float介绍
  2. css定义变量(定义:--aa;使用:var(--aa)、calc()计算样式函数
  3. IAR教程之IAR常用功能简介
  4. Android Studio更新问题
  5. 海外仓一件代发的优势有哪些?
  6. 简易移动端爬虫实现pixabay网站图片搜索
  7. 一周信创舆情观察(1.18~1.24)
  8. AI一分钟 | 无人驾驶技术排名:百度居中游,苹果特斯拉垫底;Google在深圳设立办公室
  9. 画像ToB独角兽,怎么做风口下能飞的猪?
  10. 微信小程序系列(6)如何用微信小程序写一个论坛?贴心代码详解(四)搜索页