Advertisement
YuvalGai

Untitled

Mar 5th, 2024
768
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 18.50 KB | None | 0 0
  1. t_booster_mode_dashboard = {
  2.     '01_truncate_transformation_table': '''
  3.        truncate CANDIVORE.TRANSFORMATION.TRANS_BOOSTER_MODE_DASHBOARD
  4.    ''',
  5.     '02_set_last_update_variable': '''
  6.                set T_BOOSTER_MODE_DASHBOARD_UPDATED_DT_MNG = (
  7.                    SELECT
  8.            date(
  9.                NVL(max(LAST_LOAD_DATE), to_timestamp('2023-08-25'))
  10.            ) as LAST_UPDATED_DT_MNG
  11.        FROM
  12.            candivore.manage.management_table
  13.        WHERE
  14.            1 = 1
  15.            AND table_name = 'CANDIVORE.SEMANTIC_LAYER.T_BOOSTER_MODE_DASHBOARD'
  16.        ORDER BY
  17.            ID DESC
  18.        LIMIT
  19.            1
  20.        );
  21.    ''',
  22.     '03_insert_delta_into_trans_table': '''
  23.      INSERT INTO CANDIVORE.TRANSFORMATION.TRANS_BOOSTER_MODE_DASHBOARD (
  24.         INTERVAL_DATE
  25.        ,ARENA_GROUP
  26.        ,CURRENT_ARENA_INDEX
  27.        ,TROPHY_GROUP
  28.        ,payers_segment
  29.        ,LO_ENTRY_IS_PREMIUM_PASS_EXCLUSIVE
  30.        ,LTV_GROUP
  31.        ,LO_ENTRY_TROPHY_MODE
  32.        ,LO_ENTRY_TROPHY_GAIN
  33.        ,LO_ENTRY_TROPHY_LOSS
  34.        ,PVP_MODE
  35.        ,MATCH_TYPE_ID
  36.        ,MATCH_TYPE
  37.        ,MATCH_MODE
  38.        ,MODIFIER_1
  39.        ,MODIFIER_2
  40.        ,MATCH_MODIFIER_3
  41.        ,MATCH_SUB_TYPE
  42.        ,RESOURCE_SUB_TYPE
  43.        ,BOOSTER_NAME
  44.        ,RIVAL_RESOURCE_SUB_TYPE
  45.        ,RUMBLE_SIZE
  46.        ,RIVAL_BOOSTER_NAME
  47.        ,ROUNDS_CNT
  48.        ,IS_PRIVATE
  49.        ,IS_MC_MATCH
  50.        ,IS_RIVAL_BOT
  51.        ,TURN_INDEX
  52.        ,APP_VERSION
  53.        ,SOLO_TYPE
  54.        ,stakes_multiplier
  55.        ,LAST_UPDATED_DT
  56.        ,DW_INSERT_DT
  57.        ,ROUNDS
  58.        ,MATCH_SCORE
  59.        ,MATCH_DURATION_MINS
  60.        ,BOOSTER_ACTIVATIONS
  61.        ,RESYNCS
  62.        ,RESYNC_MATCHES
  63.        ,ERROR_RESYNCS
  64.        ,ERROR_RESYNC_MATCHES
  65.        ,CONCEDED_MATCHES
  66.        ,CONCEDED_MATCHES_1_10
  67.        ,CONCEDED_MATCHES_10_60
  68.        ,CONCEDED_MATCHES_AFTER_60SEC
  69.        ,OOT
  70.        ,OOT_MATCHES
  71.        ,MATCHES
  72.        ,WINS
  73.        ,AVG_MATCH_RANK
  74.        ,AGIANST_BOT_MATCHES
  75.        ,TOTAL_SECONDS_PLAYED_IN_SEGMENT
  76.        ,TOTAL_BOOSTER_ACTIVATIONS_IN_SEGMENT
  77.        ,TOTAL_FOURS
  78.        ,TOTAL_FIVES
  79.        ,MATCH_MAKING_FOUND_TIME
  80.    )
  81. SELECT
  82.    match_end_date AS INTERVAL_DATE,
  83.    arena_group,
  84.    current_arena_index,
  85.    LO_ENTRY_IS_PREMIUM_PASS_EXCLUSIVE,
  86.    CASE
  87.    WHEN trophies_cnt < 1500 THEN '0-1500'
  88.        WHEN trophies_cnt < 3800 THEN '1500-3800'
  89.        WHEN trophies_cnt < 8000 THEN '3800-8000'
  90.        WHEN trophies_cnt < 17000 THEN '8000-17000'
  91.        WHEN trophies_cnt < 30000 THEN '17000-30000'
  92.        ELSE '30000+'
  93.    END AS trophy_group,
  94.    payers_segment,
  95.    ltv_group,
  96.    lo_entry_trophy_mode,
  97.    lo_entry_trophy_gain,
  98.    lo_entry_trophy_loss,
  99.    pvp_mode,
  100.    MATCH_TYPE_ID,
  101.    case
  102.        when PVP_MODE = 'Solo' then 'Solo'
  103.        when pvp_mode = 'Rumble' then 'Rumble'
  104.        when calendar_entry_id like '%onboarding%' then 'Onboarding'
  105.        when calendar_entry_id like '%adventure%' then 'Adventure'
  106.        when match_sub_type = 'boosters-clash-friendly' then 'Booster Clash'
  107.        when match_sub_type = 'score-race' then 'Leaderboard'
  108.        when is_random_mixer = TRUE then 'Random Mixer'
  109.        else MATCH_TYPE
  110.    end match_type,
  111.    MATCH_MODE,
  112.    MODIFIER_1,
  113.    MODIFIER_2,
  114.    match_modifier_3,
  115.    concat(
  116.        MATCH_SUB_TYPE,
  117.        '-',
  118.        MATCH_MODE,
  119.        '+',
  120.        MODIFIER_1,
  121.        '-',
  122.        MODIFIER_2,
  123.        '-',
  124.        match_modifier_3
  125.    ) AS match_sub_type,
  126.    RESOURCE_SUB_TYPE,
  127.    BOOSTER_NAME,
  128.    RIVAL_RESOURCE_SUB_TYPE,
  129.    RUMBLE_SIZE,
  130.    CASE
  131.        WHEN PVP_MODE NOT LIKE 'PvP' THEN 'No Rival(Solo/Rumble)'
  132.        ELSE RIVAL_BOOSTER_NAME
  133.    END RIVAL_BOOSTER_NAME,
  134.    rounds_cnt,
  135.    is_private,
  136.    is_mc_match,
  137.    is_rival_bot,
  138.    turn_index,
  139.    app_version,
  140.    CASE
  141.        when LO_EVENT_ID like '%-mc-%' then 'MC'
  142.        when LO_EVENT_ID like '%cosmic%' then 'cosmic'
  143.        when LO_EVENT_ID like '%rally%' then 'rally'
  144.        when LO_EVENT_ID like '%heist%' then 'heist'
  145.    end Solo_Type,
  146.    ifnull(stakes_multiplier,1) as stakes_multiplier,
  147.    match_end_date as last_updated_dt,
  148.    current_timestamp() as dw_insert_dt,
  149.    SUM(ROUNDS_CNT) AS ROUNDS,
  150.    SUM(MATCH_SCORE) AS MATCH_SCORE,
  151.    SUM(MATCH_DURATION_SEC) / 60 AS MATCH_DURATION_MINS,
  152.    SUM(ABILITY_ACTIVATED_CNT) AS BOOSTER_ACTIVATIONS,
  153.    SUM(ifnull(CS_RESYNCS, 0)) AS RESYNCS,
  154.    COUNT(
  155.        DISTINCT CASE
  156.            WHEN CS_RESYNCS > 0 THEN concat(match_id, a.user_id, rematch_cnt)
  157.        END
  158.    ) AS RESYNC_MATCHES,
  159.    SUM(ifnull(ERROR_RESYNCS, 0)) AS ERROR_RESYNCS,
  160.    COUNT(
  161.        DISTINCT CASE
  162.            WHEN ERROR_RESYNCS > 0 THEN concat(match_id, a.user_id, rematch_cnt)
  163.        END
  164.    ) AS ERROR_RESYNC_MATCHES,
  165.    SUM(
  166.        CASE
  167.            WHEN is_conceded = 1
  168.            AND is_won = 0
  169.            AND match_duration_sec = 0 THEN 1
  170.        END
  171.    ) AS CONCEDED_MATCHES,
  172.    SUM(
  173.        CASE
  174.            WHEN is_conceded = 1
  175.            AND is_won = 0
  176.            AND match_duration_sec BETWEEN 1
  177.            AND 10 THEN 1
  178.        END
  179.    ) AS CONCEDED_MATCHES_1_10,
  180.    SUM(
  181.        CASE
  182.            WHEN is_conceded = 1
  183.            AND is_won = 0
  184.            AND match_duration_sec BETWEEN 10
  185.            AND 60 THEN 1
  186.        END
  187.    ) AS CONCEDED_MATCHES_10_60,
  188.    SUM(
  189.        CASE
  190.            WHEN is_conceded = 1
  191.            AND is_won = 0
  192.            AND match_duration_sec > 60 THEN 1
  193.        END
  194.    ) AS CONCEDED_MATCHES_AFTER_60sec,
  195.    SUM(ifnull(rival_played_out_of_time, 0)) AS OOT,
  196.    COUNT(
  197.        DISTINCT CASE
  198.            WHEN rival_played_out_of_time > 0 THEN concat(match_id, a.user_id, rematch_cnt)
  199.        END
  200.    ) AS OOT_MATCHES,
  201.    COUNT(DISTINCT concat(match_id, a.user_id, rematch_cnt)) AS MATCHES,
  202.    SUM(is_won) AS wins,
  203.    AVG(MATCH_RANK) AS AVG_MATCH_RANK,
  204.    sum(is_rival_bot) AS agianst_bot_MATCHES,
  205.    sum(MATCH_DURATION_SEC) as total_seconds_played_in_segment,
  206.    sum(ability_activated_cnt) as total_booster_activations_in_segment,
  207.    sum(four_matched_cnt) as total_fours,
  208.    sum(five_matched_cnt) as total_fives,
  209.    sum(match_making_found_time) as match_making_found_time
  210. FROM
  211.    CANDIVORE.PROD.F_USER_MATCH a
  212.    LEFT JOIN  (
  213.        SELECT
  214.            *
  215.        FROM
  216.            (
  217.                SELECT
  218.                    *
  219.                    ,CASE
  220.                        WHEN lo_entry_ts IS NULL THEN lo_entry_update_ts
  221.                        ELSE lo_entry_ts
  222.                    END lo_entry_ts2,
  223.                    ROW_NUMBER() OVER (
  224.                        partition BY lo_entry_id
  225.                        ORDER BY
  226.                            lo_entry_ts2 DESC
  227.                    ) rn
  228.                FROM
  229.                    CANDIVORE.PROD.F_LIVEOPS_CALENDAR
  230.                where 1=1
  231.                and derived_tstamp > DATEADD(DAY, -7, $T_BOOSTER_MODE_DASHBOARD_UPDATED_DT_MNG)
  232.            )
  233.        WHERE
  234.            rn = 1
  235.    ) b on a.calendar_entry_id = b.lo_entry_id
  236. left join
  237.        (select user_id,interval_date,payers_segment from candivore.prod.daily_users_from_params where interval_date between DATEADD(DAY, -1, $T_BOOSTER_MODE_DASHBOARD_UPDATED_DT_MNG) and $T_BOOSTER_MODE_DASHBOARD_UPDATED_DT_MNG) K
  238.        on a.user_id = K.user_id and a.match_end_date = K.interval_date
  239. WHERE
  240.    is_bot = FALSE
  241.    AND MATCH_END_DATE > DATEADD(DAY, -3, $T_BOOSTER_MODE_DASHBOARD_UPDATED_DT_MNG)
  242. GROUP BY
  243.    1,
  244.    2,
  245.    3,
  246.    4,
  247.    5,
  248.    6,
  249.    7,
  250.    8,
  251.    9,
  252.    10,
  253.    11,
  254.    12,
  255.    13,
  256.    14,
  257.    15,
  258.    16,
  259.    17,
  260.    18,
  261.    19,
  262.    20,
  263.    21,
  264.    22,
  265.    23,
  266.    24,
  267.    25,
  268.    26,
  269.    27,
  270.    28,
  271.    29,
  272.    30,
  273.    31
  274.    ;
  275.    ''',
  276.     '04_set_merge_error_helper': '''
  277.        ALTER SESSION SET ERROR_ON_NONDETERMINISTIC_MERGE = false;
  278.    ''',
  279.     '05_merge_temp_to_prod': '''
  280.        MERGE INTO CANDIVORE.SEMANTIC_LAYER.DW_T_BOOSTER_MODE_DASHBOARD AS t
  281.        USING CANDIVORE.TRANSFORMATION.TRANS_BOOSTER_MODE_DASHBOARD AS S
  282.            ON  t.INTERVAL_DATE             = s.INTERVAL_DATE
  283.            AND t.ARENA_GROUP               = s.ARENA_GROUP
  284.            AND t.CURRENT_ARENA_INDEX       = s.CURRENT_ARENA_INDEX
  285.            AND t.TROPHY_GROUP              = s.TROPHY_GROUP
  286.            AND t.payers_segment            = s.payers_segment
  287.            AND t.LTV_GROUP                 = s.LTV_GROUP
  288.            AND t.PVP_MODE                  = s.PVP_MODE
  289.            AND t.MATCH_TYPE_ID             = s.MATCH_TYPE_ID
  290.            AND t.MATCH_MODE                = s.MATCH_MODE
  291.            AND (t.MATCH_SUB_TYPE           = s.MATCH_SUB_TYPE OR (s.MATCH_SUB_TYPE IS NULL AND t.MATCH_SUB_TYPE IS NULL ) )
  292.            AND (t.MODIFIER_1               = s.MODIFIER_1 OR (s.MODIFIER_1 IS NULL AND t.MODIFIER_1 IS NULL ) )
  293.            AND (t.MODIFIER_2               = s.MODIFIER_2 OR (s.MODIFIER_2 IS NULL AND t.MODIFIER_2 IS NULL ) )
  294.            AND (t.MATCH_MODIFIER_3         = s.MATCH_MODIFIER_3 OR (s.MATCH_MODIFIER_3 IS NULL AND t.MATCH_MODIFIER_3 IS NULL ) )
  295.            AND (t.RESOURCE_SUB_TYPE        = s.RESOURCE_SUB_TYPE OR (s.RESOURCE_SUB_TYPE IS NULL AND t.RESOURCE_SUB_TYPE IS NULL ) )
  296.            AND (t.RIVAL_RESOURCE_SUB_TYPE  = s.RIVAL_RESOURCE_SUB_TYPE OR (s.RIVAL_RESOURCE_SUB_TYPE IS NULL AND t.RIVAL_RESOURCE_SUB_TYPE IS NULL ) )
  297.            AND (t.IS_PRIVATE               = s.IS_PRIVATE OR (s.IS_PRIVATE IS NULL AND t.IS_PRIVATE IS NULL ) )
  298.            AND t.BOOSTER_NAME              = s.BOOSTER_NAME
  299.            AND t.RIVAL_BOOSTER_NAME        = s.RIVAL_BOOSTER_NAME
  300.            AND t.IS_RIVAL_BOT              = s.IS_RIVAL_BOT
  301.            AND t.APP_VERSION               = s.APP_VERSION
  302.            AND t.IS_MC_MATCH               = s.IS_MC_MATCH
  303.            AND (t.LO_ENTRY_TROPHY_MODE     = s.LO_ENTRY_TROPHY_MODE OR (s.LO_ENTRY_TROPHY_MODE IS NULL AND t.LO_ENTRY_TROPHY_MODE IS NULL ) )
  304.            AND (t.LO_ENTRY_TROPHY_GAIN     = s.LO_ENTRY_TROPHY_GAIN OR (s.LO_ENTRY_TROPHY_GAIN IS NULL AND t.LO_ENTRY_TROPHY_GAIN IS NULL ) )
  305.            AND (t.TURN_INDEX               = s.TURN_INDEX OR (s.TURN_INDEX IS NULL AND t.TURN_INDEX IS NULL ) )
  306.            AND (t.RUMBLE_SIZE              = s.RUMBLE_SIZE OR (s.RUMBLE_SIZE IS NULL AND t.RUMBLE_SIZE IS NULL ) )
  307.            AND (t.SOLO_TYPE                = s.SOLO_TYPE OR (s.SOLO_TYPE IS NULL AND t.SOLO_TYPE IS NULL ) )
  308.            AND (t.stakes_multiplier        = s.stakes_multiplier OR (s.stakes_multiplier IS NULL AND t.stakes_multiplier IS NULL ) )
  309.  
  310.        WHEN MATCHED THEN UPDATE SET
  311.             t. INTERVAL_DATE                       = s.INTERVAL_DATE
  312.            ,t.ARENA_GROUP                          = s.ARENA_GROUP
  313.            ,t.CURRENT_ARENA_INDEX                  = s.CURRENT_ARENA_INDEX
  314.            ,t.TROPHY_GROUP                         = s.TROPHY_GROUP
  315.            ,t.payers_segment                       = s.payers_segment
  316.            ,t.LO_ENTRY_IS_PREMIUM_PASS_EXCLUSIVE   = s.LO_ENTRY_IS_PREMIUM_PASS_EXCLUSIVE
  317.            ,t.LTV_GROUP                            = s.LTV_GROUP
  318.            ,t.LO_ENTRY_TROPHY_MODE                 = s.LO_ENTRY_TROPHY_MODE
  319.            ,t.LO_ENTRY_TROPHY_GAIN                 = s.LO_ENTRY_TROPHY_GAIN
  320.            ,t.LO_ENTRY_TROPHY_LOSS                 = s.LO_ENTRY_TROPHY_LOSS
  321.            ,t.PVP_MODE                             = s.PVP_MODE
  322.            ,t.MATCH_TYPE_ID                        = s.MATCH_TYPE_ID
  323.            ,t.MATCH_TYPE                           = s.MATCH_TYPE
  324.            ,t.MATCH_MODE                           = s.MATCH_MODE
  325.            ,t.MODIFIER_1                           = s.MODIFIER_1
  326.            ,t.MODIFIER_2                           = s.MODIFIER_2
  327.            ,t.MATCH_MODIFIER_3                     = s.MATCH_MODIFIER_3
  328.            ,t.MATCH_SUB_TYPE                       = s.MATCH_SUB_TYPE
  329.            ,t.RESOURCE_SUB_TYPE                    = s.RESOURCE_SUB_TYPE
  330.            ,t.BOOSTER_NAME                         = s.BOOSTER_NAME
  331.            ,t.RIVAL_RESOURCE_SUB_TYPE              = s.RIVAL_RESOURCE_SUB_TYPE
  332.            ,t.RUMBLE_SIZE                          = s.RUMBLE_SIZE
  333.            ,t.RIVAL_BOOSTER_NAME                   = s.RIVAL_BOOSTER_NAME
  334.            ,t.ROUNDS_CNT                           = s.ROUNDS_CNT
  335.            ,t.IS_PRIVATE                           = s.IS_PRIVATE
  336.            ,t.IS_MC_MATCH                          = s.IS_MC_MATCH
  337.            ,t.IS_RIVAL_BOT                         = s.IS_RIVAL_BOT
  338.            ,t.TURN_INDEX                           = s.TURN_INDEX
  339.            ,t.APP_VERSION                          = s.APP_VERSION
  340.            ,t.SOLO_TYPE                            = s.SOLO_TYPE
  341.            ,t.stakes_multiplier                    = s.stakes_multiplier
  342.            ,t.ROUNDS                               = s.ROUNDS
  343.            ,t.MATCH_SCORE                          = s.MATCH_SCORE
  344.            ,t.MATCH_DURATION_MINS                  = s.MATCH_DURATION_MINS
  345.            ,t.BOOSTER_ACTIVATIONS                  = s.BOOSTER_ACTIVATIONS
  346.            ,t.RESYNCS                              = s.RESYNCS
  347.            ,t.RESYNC_MATCHES                       = s.RESYNC_MATCHES
  348.            ,t.ERROR_RESYNCS                        = s.ERROR_RESYNCS
  349.            ,t.ERROR_RESYNC_MATCHES                 = s.ERROR_RESYNC_MATCHES
  350.            ,t.CONCEDED_MATCHES                     = s.CONCEDED_MATCHES
  351.            ,t.CONCEDED_MATCHES_1_10                = s.CONCEDED_MATCHES_1_10
  352.            ,t.CONCEDED_MATCHES_10_60               = s.CONCEDED_MATCHES_10_60
  353.            ,t.CONCEDED_MATCHES_AFTER_60SEC         = s.CONCEDED_MATCHES_AFTER_60SEC
  354.            ,t.OOT                                  = s.OOT
  355.            ,t.OOT_MATCHES                          = s.OOT_MATCHES
  356.            ,t.MATCHES                              = s.MATCHES
  357.            ,t.WINS                                 = s.WINS
  358.            ,t.AVG_MATCH_RANK                       = s.AVG_MATCH_RANK
  359.            ,t.AGIANST_BOT_MATCHES                  = s.AGIANST_BOT_MATCHES
  360.            ,t.TOTAL_SECONDS_PLAYED_IN_SEGMENT      = s.TOTAL_SECONDS_PLAYED_IN_SEGMENT
  361.            ,t.TOTAL_BOOSTER_ACTIVATIONS_IN_SEGMENT = s.TOTAL_BOOSTER_ACTIVATIONS_IN_SEGMENT
  362.            ,t.TOTAL_FOURS                          = s.TOTAL_FOURS
  363.            ,t.TOTAL_FIVES                          = s.TOTAL_FIVES
  364.            ,t.MATCH_MAKING_FOUND_TIME              = s.MATCH_MAKING_FOUND_TIME
  365.            ,t.LAST_UPDATED_DT                      = s.LAST_UPDATED_DT
  366.            ,t.DW_INSERT_DT                         = s.DW_INSERT_DT
  367.        WHEN NOT MATCHED THEN INSERT (
  368.            INTERVAL_DATE
  369.            ,ARENA_GROUP
  370.            ,CURRENT_ARENA_INDEX
  371.            ,TROPHY_GROUP
  372.            ,payers_segment
  373.            ,LO_ENTRY_IS_PREMIUM_PASS_EXCLUSIVE
  374.            ,LTV_GROUP
  375.            ,LO_ENTRY_TROPHY_MODE
  376.            ,LO_ENTRY_TROPHY_GAIN
  377.            ,LO_ENTRY_TROPHY_LOSS
  378.            ,PVP_MODE
  379.            ,MATCH_TYPE_ID
  380.            ,MATCH_TYPE
  381.            ,MATCH_MODE
  382.            ,MODIFIER_1
  383.            ,MODIFIER_2
  384.            ,MATCH_MODIFIER_3
  385.            ,MATCH_SUB_TYPE
  386.            ,RESOURCE_SUB_TYPE
  387.            ,BOOSTER_NAME
  388.            ,RIVAL_RESOURCE_SUB_TYPE
  389.            ,RUMBLE_SIZE
  390.            ,RIVAL_BOOSTER_NAME
  391.            ,ROUNDS_CNT
  392.            ,IS_PRIVATE
  393.            ,IS_MC_MATCH
  394.            ,IS_RIVAL_BOT
  395.            ,TURN_INDEX
  396.            ,APP_VERSION
  397.            ,SOLO_TYPE
  398.            ,stakes_multiplier
  399.            ,ROUNDS
  400.            ,MATCH_SCORE
  401.            ,MATCH_DURATION_MINS
  402.            ,BOOSTER_ACTIVATIONS
  403.            ,RESYNCS
  404.            ,RESYNC_MATCHES
  405.            ,ERROR_RESYNCS
  406.            ,ERROR_RESYNC_MATCHES
  407.            ,CONCEDED_MATCHES
  408.            ,CONCEDED_MATCHES_1_10
  409.            ,CONCEDED_MATCHES_10_60
  410.            ,CONCEDED_MATCHES_AFTER_60SEC
  411.            ,OOT
  412.            ,OOT_MATCHES
  413.            ,MATCHES
  414.            ,WINS
  415.            ,AVG_MATCH_RANK
  416.            ,AGIANST_BOT_MATCHES
  417.            ,TOTAL_SECONDS_PLAYED_IN_SEGMENT
  418.            ,TOTAL_BOOSTER_ACTIVATIONS_IN_SEGMENT
  419.            ,TOTAL_FOURS
  420.            ,TOTAL_FIVES
  421.            ,MATCH_MAKING_FOUND_TIME
  422.            ,LAST_UPDATED_DT
  423.            ,DW_INSERT_DT
  424.        )
  425.        VALUES (
  426.            s.INTERVAL_DATE
  427.            ,s.ARENA_GROUP
  428.            ,s.CURRENT_ARENA_INDEX
  429.            ,s.TROPHY_GROUP
  430.            ,s.payers_segment
  431.            ,s.LO_ENTRY_IS_PREMIUM_PASS_EXCLUSIVE
  432.            ,s.LTV_GROUP
  433.            ,s.LO_ENTRY_TROPHY_MODE
  434.            ,s.LO_ENTRY_TROPHY_GAIN
  435.            ,s.LO_ENTRY_TROPHY_LOSS
  436.            ,s.PVP_MODE
  437.            ,s.MATCH_TYPE_ID
  438.            ,s.MATCH_TYPE
  439.            ,s.MATCH_MODE
  440.            ,s.MODIFIER_1
  441.            ,s.MODIFIER_2
  442.            ,s.MATCH_MODIFIER_3
  443.            ,s.MATCH_SUB_TYPE
  444.            ,s.RESOURCE_SUB_TYPE
  445.            ,s.BOOSTER_NAME
  446.            ,s.RIVAL_RESOURCE_SUB_TYPE
  447.            ,s.RUMBLE_SIZE
  448.            ,s.RIVAL_BOOSTER_NAME
  449.            ,s.ROUNDS_CNT
  450.            ,s.IS_PRIVATE
  451.            ,s.IS_MC_MATCH
  452.            ,s.IS_RIVAL_BOT
  453.            ,s.TURN_INDEX
  454.            ,s.APP_VERSION
  455.            ,s.SOLO_TYPE
  456.            ,s.stakes_multiplier
  457.            ,s.ROUNDS
  458.            ,s.MATCH_SCORE
  459.            ,s.MATCH_DURATION_MINS
  460.            ,s.BOOSTER_ACTIVATIONS
  461.            ,s.RESYNCS
  462.            ,s.RESYNC_MATCHES
  463.            ,s.ERROR_RESYNCS
  464.            ,s.ERROR_RESYNC_MATCHES
  465.            ,s.CONCEDED_MATCHES
  466.            ,s.CONCEDED_MATCHES_1_10
  467.            ,s.CONCEDED_MATCHES_10_60
  468.            ,s.CONCEDED_MATCHES_AFTER_60SEC
  469.            ,s.OOT
  470.            ,s.OOT_MATCHES
  471.            ,s.MATCHES
  472.            ,s.WINS
  473.            ,s.AVG_MATCH_RANK
  474.            ,s.AGIANST_BOT_MATCHES
  475.            ,s.TOTAL_SECONDS_PLAYED_IN_SEGMENT
  476.            ,s.TOTAL_BOOSTER_ACTIVATIONS_IN_SEGMENT
  477.            ,s.TOTAL_FOURS
  478.            ,s.TOTAL_FIVES
  479.            ,s.MATCH_MAKING_FOUND_TIME
  480.            ,s.LAST_UPDATED_DT
  481.            ,s.DW_INSERT_DT
  482.        )
  483.        ;
  484.    ''',
  485.     '06_update_mng_table': '''
  486.    INSERT INTO CANDIVORE.MANAGE.MANAGEMENT_TABLE(
  487.        TABLE_NAME
  488.        ,DW_INSERT_DATE
  489.        ,LAST_LOAD_DATE
  490.        ,ROWS_LOADED
  491.    )  VALUES (
  492.        'CANDIVORE.SEMANTIC_LAYER.T_BOOSTER_MODE_DASHBOARD'
  493.        ,current_timestamp()
  494.        ,(select max(LAST_UPDATED_DT) from CANDIVORE.TRANSFORMATION.TRANS_BOOSTER_MODE_DASHBOARD)
  495.        ,(select count(*) from CANDIVORE.TRANSFORMATION.TRANS_BOOSTER_MODE_DASHBOARD)
  496.    )
  497. '''
  498. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement