Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CREATE OR REPLACE TABLE candivore.semantic_layer.T_SOLO_DASHBOARD AS
- SELECT
- DATE(derived_tstamp) interval_date
- ,calendar_entry_id
- ,lo_event_id
- ,CASE WHEN lo_event_id LIKE '%-mc-%' THEN 'MasterClub'
- WHEN lo_event_id LIKE '%cosmic%' THEN 'Cosmic'
- WHEN lo_event_id LIKE '%rally%' THEN 'Rally'
- WHEN lo_event_id LIKE '%heist%' THEN 'Heist'
- WHEN lo_event_id LIKE '%mutation%' THEN 'Mutations-Lab'
- ELSE 'no_entry_id(triggered)' END solo_type
- ,arena_group
- ,seniority_bin
- ,ltv_group
- ,engagement_group
- ,match_mode
- ,modifier_1
- ,modifier_2
- ,booster_tier
- ,resource_sub_type
- ,booster_name
- ,max_prize_won
- ,max_prize_reached
- ,mode(P25) P25
- ,mode(P50) P50
- ,mode(P75) P75
- ,mode(P80) P80
- ,mode(P85) P85
- ,mode(P90) P90
- ,mode(P95) P95
- ,mode(unique_users_in_event) unique_users_in_event
- ,mode(unique_users_reached_0_spot_prize_all_event) unique_users_reached_0_spot_prize_all_event
- ,mode(unique_users_reached_1_spot_prize_all_event) unique_users_reached_1_spot_prize_all_event
- ,mode(unique_users_reached_2_spot_prize_all_event) unique_users_reached_2_spot_prize_all_event
- ,mode(unique_users_reached_3_spot_prize_all_event) unique_users_reached_3_spot_prize_all_event
- ,mode(unique_users_reached_4_spot_prize_all_event) unique_users_reached_4_spot_prize_all_event
- ,COUNT(DISTINCT CASE WHEN max_prize_won = 0 THEN user_id END) unique_users_reached_0_spot_prize_solo_run_with_boosters
- ,COUNT(DISTINCT CASE WHEN max_prize_won = 1 THEN user_id END) unique_users_reached_1_spot_prize_solo_run_with_boosters
- ,COUNT(DISTINCT CASE WHEN max_prize_won = 2 THEN user_id END) unique_users_reached_2_spot_prize_solo_run_with_boosters
- ,COUNT(DISTINCT CASE WHEN max_prize_won = 3 THEN user_id END) unique_users_reached_3_spot_prize_solo_run_with_boosters
- ,COUNT(DISTINCT CASE WHEN max_prize_won = 4 THEN user_id END) unique_users_reached_4_spot_prize_solo_run_with_boosters
- ,COUNT(DISTINCT CASE WHEN max_prize_won = 5 THEN user_id END) unique_users_reached_5_spot_prize_solo_run_with_boosters
- ,COUNT(DISTINCT user_id) unique_users
- ,COUNT(DISTINCT match_id) total_matches
- ,SUM(match_score) match_score
- ,SUM(match_duration_sec) match_duration_sec
- ,SUM(ability_activated_cnt) ability_activated_cnt
- FROM
- (SELECT A.* ,B.AA max_prize_reached, COUNT(DISTINCT CASE WHEN max_prize_reached = 0 THEN A.user_id END) OVER(partition BY A.calendar_entry_id) unique_users_reached_0_spot_prize_all_event
- ,COUNT(DISTINCT CASE WHEN max_prize_reached = 1 THEN A.user_id END) OVER(partition BY A.calendar_entry_id) unique_users_reached_1_spot_prize_all_event
- ,COUNT(DISTINCT CASE WHEN max_prize_reached = 2 THEN A.user_id END) OVER(partition BY A.calendar_entry_id) unique_users_reached_2_spot_prize_all_event
- ,COUNT(DISTINCT CASE WHEN max_prize_reached = 3 THEN A.user_id END) OVER(partition BY A.calendar_entry_id) unique_users_reached_3_spot_prize_all_event
- ,COUNT(DISTINCT CASE WHEN max_prize_reached = 4 THEN A.user_id END) OVER(partition BY A.calendar_entry_id) unique_users_reached_4_spot_prize_all_event
- FROM (SELECT
- derived_tstamp
- ,user_id
- ,arena_group
- ,MATCH_ID
- ,seniority_bin
- ,ltv_group
- ,engagement_group
- ,match_mode
- ,modifier_1
- ,modifier_2
- ,calendar_entry_id
- ,lo_event_id
- ,CASE WHEN lo_event_id LIKE '%-mc-%' THEN 'MasterClub'
- WHEN lo_event_id LIKE '%cosmic%' THEN 'Cosmic'
- WHEN lo_event_id LIKE '%rally%' THEN 'Rally'
- WHEN lo_event_id LIKE '%heist%' THEN 'Heist'
- WHEN lo_event_id LIKE '%mutation%' THEN 'Mutations-Lab'
- ELSE 'no_entry_id(triggered)' END solo_type
- ,booster_tier
- ,resource_sub_type
- ,booster_name
- ,match_score
- ,match_duration_sec
- ,ability_activated_cnt
- ,max_prize_eligibility
- ,COUNT(DISTINCT user_id) OVER(partition BY calendar_entry_id) unique_users_in_event
- ,percentile_disc(0.25) WITHIN GROUP (ORDER BY match_score) OVER(partition BY booster_name, calendar_entry_id) P25
- ,percentile_disc(0.5) WITHIN GROUP (ORDER BY match_score) OVER(partition BY booster_name, calendar_entry_id) P50
- ,percentile_disc(0.75) WITHIN GROUP (ORDER BY match_score) OVER(partition BY booster_name, calendar_entry_id) P75
- ,percentile_disc(0.80) WITHIN GROUP (ORDER BY match_score) OVER(partition BY booster_name, calendar_entry_id) P80
- ,percentile_disc(0.85) WITHIN GROUP (ORDER BY match_score) OVER(partition BY booster_name, calendar_entry_id) P85
- ,percentile_disc(0.90) WITHIN GROUP (ORDER BY match_score) OVER(partition BY booster_name, calendar_entry_id) P90
- ,percentile_disc(0.95) WITHIN GROUP (ORDER BY match_score) OVER(partition BY booster_name, calendar_entry_id) P95
- ,MAX(max_prize_eligibility) OVER(partition BY user_id,calendar_entry_id) max_prize_reached_per_event_per_user
- ,max_prize_won
- ,levels
- FROM candivore.prod.f_user_match WHERE pvp_mode = 'Solo' AND DATE(derived_tstamp) >= DATEADD(DAY,-91,GETDATE())) A
- LEFT JOIN
- (SELECT calendar_entry_id, user_id, MAX(event_level) AA FROM candivore.prod.f_live_event_progression WHERE lo_event_id LIKE '%mutation%' GROUP BY 1,2) B ON A.user_id = B.user_id AND A.calendar_entry_id = B.calendar_entry_id
- )
- GROUP BY 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement