58 lines
2.8 KiB
SQL
58 lines
2.8 KiB
SQL
with 'Android' as os,
|
|
'gmhdtt' as owner,
|
|
'2021-07-11' as start_date,
|
|
'2021-07-20' as end_date
|
|
select date,
|
|
`#bundle_id`,
|
|
active_num,
|
|
new_account_num,
|
|
new_account_array,
|
|
money,
|
|
recharge_account_num,
|
|
round(recharge_account_num * 100 / active_num, 2) as pay_rate,
|
|
round(money / recharge_account_num, 2) as arppu,
|
|
round(money / active_num, 2) as arpu,
|
|
arrayMap(x-> x.2, arrayFilter(x->has(new_account_array, x.1), bid_money)) as new_recharge,
|
|
arraySum(new_recharge) as new_money,
|
|
length(new_recharge) as new_pay_num,
|
|
round(new_pay_num*100/new_account_num,2) as new_pay_rate,
|
|
round(new_money*100/new_pay_num,2) as new_arppu,
|
|
round(new_money*100/new_account_num,2) as new_arpu
|
|
from (select date,
|
|
`#bundle_id`,
|
|
active_num,
|
|
new_account_num,
|
|
new_account_array,
|
|
money,
|
|
recharge_account_num
|
|
from (select date, `#bundle_id`, active_num, new_account_num, new_account_array
|
|
from (select date, `#bundle_id`, sum(num) as active_num
|
|
from zhengba.active_account
|
|
where date >= start_date
|
|
and date <= end_date
|
|
and `#os` = os
|
|
and owner_name = owner
|
|
group by date, `#bundle_id`) as active_tbl
|
|
left join (select date,
|
|
`#bundle_id`,
|
|
sum(num) as new_account_num,
|
|
flatten(groupArray(account)) as new_account_array
|
|
from zhengba.new_account
|
|
where date >= start_date
|
|
and date <= end_date
|
|
and `#os` = os
|
|
and owner_name = owner
|
|
group by date, `#bundle_id`) as new_account_tbl
|
|
on active_tbl.date = new_account_tbl.date and
|
|
active_tbl.`#bundle_id` = new_account_tbl.`#bundle_id`) as tb1
|
|
left join (select date, `#bundle_id`, sum(money) as money, sum(account_num) as recharge_account_num
|
|
from zhengba.recharge_game
|
|
where date >= start_date
|
|
and date <= end_date
|
|
and `#os` = os
|
|
and owner_name = owner
|
|
group by date, `#bundle_id`) as recharge_tbl
|
|
on recharge_tbl.date = tb1.date and tb1.`#bundle_id` = recharge_tbl.`#bundle_id`) as tb2
|
|
left join zhengba.new_account_recharge as tb3 on tb2.date = tb3.date
|
|
order by date desc
|