select max(tmp.province_name) from
(select bt.city_num, bt.gmv, pt.province_num, pt.province_name from business_table bt
left join province_table pt on bt.city_num = pt.city_num) tmp
GROUP BY (tmp.province_num) HAVING sum(tmp.gmv) > 500
select
count(case when tmp1.pro_gmv >=0 and tmp1.pro_gmv <500 then tmp1.pro_name else NULL END ) as gmv_0_500,
count(case when tmp1.pro_gmv >=500 and tmp1.pro_gmv <1000 then tmp1.pro_name else NULL END ) as gmv_500_1000,
count(case when tmp1.pro_gmv >=1000 then tmp1.pro_name else NULL END ) as gmv_1000_
from
(select max(tmp.province_name) as pro_name , sum(gmv) as pro_gmv from
(select bt.city_num, bt.gmv, pt.province_num, pt.province_name from business_table bt
left join province_table pt on bt.city_num = pt.city_num) tmp
group by tmp.province_num) tmp1
-- group by
select city_num, sum(gmv) as c_gmv from business_table bt group by city_num order by c_gmv
-- window
select bt.city_num, bt.c_gmv from
(select DISTINCT city_num, sum(gmv) over (PARTITION by city_num) as c_gmv from business_table) bt
order by bt.c_gmv
海盜指標法(AARRR海盜模型)
它反映了增長是系統性地貫穿於使用者生命週期各個階段的:使用者拉新(Acquisition)、使用者啟用(Activation)、使用者留存(Retention)、商業變現(Revenue)、使用者推薦(Referral)
選指標常用方法是指標分級方法和OSM模型。
指標分級方法
T1 公司戰略層面指標
T2 業務策略層面指標
T3 業務執行層面指標
OSM模型
O 業務目標
S 業務策略
M 業務度量
維度建模的模式:
維度建模步驟:
事實表種類:
維度表技術
維度表結構
維度表謹記一條原則,包含單一主鍵列
跨表鑽取
使不同的查詢能夠針對兩個或更多的事實表進行查詢
上鑽(roll-up):上卷是沿著維的層次向上聚集彙總資料。例如,對產品銷售資料,沿著時間維上卷,可以求出所有產品在所有地區每月(或季度或年或全部)的銷售額。
下鑽(drill-down):下鑽是上鑽的逆操作,它是沿著維的層次向下,檢視更詳細的資料。
退化維度
退化維度就是將維度退回到事實表中。因為有時維度除了主鍵沒有其他內容,雖然也是合法維度鍵,但是一般都會退回到事實表中,減少關聯次數,提高查詢效能
多層次維度
多數維度包含不止一個自然層次,如日期維度可以從天的層次到周到月到年的層次。所以在有些情況下,在同一維度中存在不同的層次。
維度表空值屬性
推薦採用描述性字串代替空值
日曆日期維度
在日期維度表中,主鍵的設定不要使用順序生成的id來表示,可以使用更有意義的資料表示,比如將年月日合併起來表示,即YYYYMMDD,或者更加詳細的精度。
業務資料 -- Sqoop
紀錄檔資料 -- Flume
其他資料 -- 通用第三方介面