今天檢查老客戶寫法的誤差,耗費無數心血,終於解決了。
原來的方法:取註冊時間《完單時間所在的星期一,but結果總是有三萬左右誤差
新方法:取老客戶註冊時間所在周 < 完單時間所在周
新客戶:註冊時間所在周 = 完單時間所在周
select b.week1 as week
,count
(distinct b.passenger_id)
as passenger_finish_cnt ---老使用者當周完單人數
,'全國'
as city_name
from
(select straight_join
c1.passenger_id
,c1.week as week1
,c2.week as week2
,c2.year_min
from
(select
distinct passenger_id
,weekofyear(to_timestamp(ds,
'yyyymmdd'))
as week
from pub_cockpit_db.dws_ord_route_p_detail_fact_ds
where settlement_time is
notnull
and ds >= from_unixtime(unix_timestamp( date_add(
now(),
-(dayofweek(
now())
-2))
-interval
7 weeks )
,'yyyymmdd'
))c1
left
join
[shuffle]
(select passenger_uuid ------昨日,所有會員id以及他們的註冊時間
,weekofyear(to_timestamp(substr(register_time,1,
10),'yyyy-mm-dd'))
as week
,year
(min
(register_time)
) year_min
from pub_cockpit_db.dm_user_basic_char_dt
where ds = from_unixtime(unix_timestamp(date_add(
now(),
-1))
,'yyyymmdd'
)and source =
group
by passenger_uuid,weekofyear(to_timestamp(substr(register_time,1,
10),'yyyy-mm-dd'))
) c2
on c1.passenger_id = c2.passenger_uuid
) bwhere b.week2 < b.week1
or b.year_min <=
2019
group
by week
,city_name
思考題 新客老客定義
一 問題 資料分析的兩層模型中,第一層就是對分析物件做細分,然後第二層看指標異動。針對使用者的分析中,最常見的細分方式是做 新客 老客 分析,對新客老客的行為 畫像進行分析。在實際應用中,發現 新客 老客 的概念有二義,因此做辨析。考慮下面一種場景 某店a顧客1月份第一次到店,以後每月到店1次 b顧...
新寫法 slide的總結
總結 1.匿名函式使用 function global window 封裝外掛程式,避免全域性變數 function global,複製 擴充套件 function jqeruy中的寫法等於js中window.onload funtion 2.es6中的class使用 class slide ini...
新的環境,新的人,新的態度
今天來新公司報道,早上來的早,新公司的人還沒有來,掃了幾眼工作環境,還不錯,雖然是剛剛裝修過的,還有點凌亂,但是總體感覺還好!客套話就不是說了,主要就說下三點感受!1.工作環境 搞it的,配置一台自己用起來舒服的電腦是最基本的需求了!因為在上一家公司我用的電腦總是卡死,好幾次都想砸鍵盤,一直不敢過載...