|
@@ -2677,7 +2677,29 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
round(IF(SUM(buy_new_user_total_role_num) >0, SUM(cost) / SUM(buy_new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
round(IF(SUM(buy_reg_num) >0, SUM(buy_first_role_num) / SUM(buy_reg_num), 0), 4) first_role_num_rate,
|
|
|
round(IF(SUM(buy_reg_num) >0, SUM(buy_role_num) / SUM(buy_reg_num), 0), 4) role_num_rate,
|
|
|
- round(IF(SUM(buy_reg_num) >0, SUM(buy_new_user_total_role_num) / SUM(buy_reg_num), 0), 4) new_user_total_role_num_rate
|
|
|
+ round(IF(SUM(buy_reg_num) >0, SUM(buy_new_user_total_role_num) / SUM(buy_reg_num), 0), 4) new_user_total_role_num_rate,
|
|
|
+ ANY_VALUE(buy_first_effective_role_num) as first_effective_role_num, -- 首日有效创角人数
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_num) as new_user_total_effective_role_num, -- 新用户累计有效创角人数
|
|
|
+ ANY_VALUE(buy_effective_role_num) as effective_role_num, -- 有效创角人数
|
|
|
+
|
|
|
+ ANY_VALUE(buy_first_effective_role_num_rate) AS first_effective_role_rate, -- 首日有效创角率
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_num_rate) as new_user_total_effective_role_num_rate, -- 新用户累计有效创角率
|
|
|
+ ANY_VALUE(buy_effective_role_num_rate) as effective_role_num_rate, -- 有效创角率
|
|
|
+
|
|
|
+ ANY_VALUE(buy_first_effective_role_num_cost) AS first_effective_role_num_cost, -- 首日有效创角成本
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_num_cost) as new_user_total_effective_role_num_cost, -- 新用户累计有效创角成本
|
|
|
+ ANY_VALUE(buy_effective_role_num_cost) as effective_role_num_cost, -- 有效创角成本
|
|
|
+
|
|
|
+ ANY_VALUE(buy_first_effective_role_amount_num) as first_effective_role_amount_num, -- 首日有效创角付费人数
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_amount_num) as new_user_total_effective_role_amount_num, -- 新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ ANY_VALUE(buy_first_effective_role_amount_num_cost) as first_effective_role_amount_num_cost, -- 首日有效创角付费成本
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_amount_num_cost) as new_user_total_effective_role_amount_num_cost, -- 新用户累计有效创角付费成本
|
|
|
+
|
|
|
+ ANY_VALUE(buy_first_effective_role_amount_num_rate) as first_effective_role_amount_num_rate, -- 首日有效创角付费比
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_amount_num_rate) as new_user_total_effective_role_amount_num_rate, -- 新用户累计有效创角付费比
|
|
|
+ ANY_VALUE(buy_first_effective_role_arpu) as first_effective_role_arpu, -- 首日有效创角ARPU
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_arpu) as new_user_total_effective_role_arpu -- 新用户累计有效创角ARPU
|
|
|
FROM
|
|
|
ads_game_day
|
|
|
""";
|
|
@@ -2731,7 +2753,29 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
round(IF(SUM(nature_new_user_total_role_num) >0, SUM(cost) / SUM(nature_new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
round(IF(SUM(nature_reg_num) >0, SUM(nature_first_role_num) / SUM(nature_reg_num), 0), 4) first_role_num_rate,
|
|
|
round(IF(SUM(nature_reg_num) >0, SUM(nature_role_num) / SUM(nature_reg_num), 0), 4) role_num_rate,
|
|
|
- round(IF(SUM(nature_reg_num) >0, SUM(nature_new_user_total_role_num) / SUM(nature_reg_num), 0), 4) new_user_total_role_num_rate
|
|
|
+ round(IF(SUM(nature_reg_num) >0, SUM(nature_new_user_total_role_num) / SUM(nature_reg_num), 0), 4) new_user_total_role_num_rate,
|
|
|
+ ANY_VALUE(nature_first_effective_role_num) as first_effective_role_num, -- 首日有效创角人数
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_num) as new_user_total_effective_role_num, -- 新用户累计有效创角人数
|
|
|
+ ANY_VALUE(nature_effective_role_num) as effective_role_num, -- 有效创角人数
|
|
|
+
|
|
|
+ ANY_VALUE(nature_first_effective_role_num_rate) AS first_effective_role_rate, -- 首日有效创角率
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_num_rate) as new_user_total_effective_role_num_rate, -- 新用户累计有效创角率
|
|
|
+ ANY_VALUE(nature_effective_role_num_rate) as effective_role_num_rate, -- 有效创角率
|
|
|
+
|
|
|
+ ANY_VALUE(nature_first_effective_role_num_cost) AS first_effective_role_num_cost, -- 首日有效创角成本
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_num_cost) as new_user_total_effective_role_num_cost, -- 新用户累计有效创角成本
|
|
|
+ ANY_VALUE(nature_effective_role_num_cost) as effective_role_num_cost, -- 有效创角成本
|
|
|
+
|
|
|
+ ANY_VALUE(nature_first_effective_role_amount_num) as first_effective_role_amount_num, -- 首日有效创角付费人数
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_amount_num) as new_user_total_effective_role_amount_num, -- 新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ ANY_VALUE(nature_first_effective_role_amount_num_cost) as first_effective_role_amount_num_cost, -- 首日有效创角付费成本
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_amount_num_cost) as new_user_total_effective_role_amount_num_cost, -- 新用户累计有效创角付费成本
|
|
|
+
|
|
|
+ ANY_VALUE(nature_first_effective_role_amount_num_rate) as first_effective_role_amount_num_rate, -- 首日有效创角付费比
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_amount_num_rate) as new_user_total_effective_role_amount_num_rate, -- 新用户累计有效创角付费比
|
|
|
+ ANY_VALUE(nature_first_effective_role_arpu) as first_effective_role_arpu, -- 首日有效创角ARPU
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_arpu) as new_user_total_effective_role_arpu -- 新用户累计有效创角ARPU
|
|
|
FROM
|
|
|
ads_game_day
|
|
|
""";
|
|
@@ -2786,7 +2830,30 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
round(IF(SUM(new_user_total_role_num) >0, SUM(cost) / SUM(new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
round(IF(SUM(reg_num) >0, SUM(first_role_num) / SUM(reg_num), 0), 4) first_role_num_rate,
|
|
|
round(IF(SUM(reg_num) >0, SUM(role_num) / SUM(reg_num), 0), 4) role_num_rate,
|
|
|
- round(IF(SUM(reg_num) >0, SUM(new_user_total_role_num) / SUM(reg_num), 0), 4) new_user_total_role_num_rate
|
|
|
+ round(IF(SUM(reg_num) >0, SUM(new_user_total_role_num) / SUM(reg_num), 0), 4) new_user_total_role_num_rate,
|
|
|
+
|
|
|
+ ANY_VALUE(first_effective_role_num) as first_effective_role_num, -- 首日有效创角人数
|
|
|
+ ANY_VALUE(new_user_total_effective_role_num) as new_user_total_effective_role_num, -- 新用户累计有效创角人数
|
|
|
+ ANY_VALUE(effective_role_num) as effective_role_num, -- 有效创角人数
|
|
|
+
|
|
|
+ ANY_VALUE(first_effective_role_num_rate) AS first_effective_role_rate, -- 首日有效创角率
|
|
|
+ ANY_VALUE(new_user_total_effective_role_num_rate) as new_user_total_effective_role_num_rate, -- 新用户累计有效创角率
|
|
|
+ ANY_VALUE(effective_role_num_rate) as effective_role_num_rate, -- 有效创角率
|
|
|
+
|
|
|
+ ANY_VALUE(first_effective_role_num_cost) AS first_effective_role_num_cost, -- 首日有效创角成本
|
|
|
+ ANY_VALUE(new_user_total_effective_role_num_cost) as new_user_total_effective_role_num_cost, -- 新用户累计有效创角成本
|
|
|
+ ANY_VALUE(effective_role_num_cost) as effective_role_num_cost, -- 有效创角成本
|
|
|
+
|
|
|
+ ANY_VALUE(first_effective_role_amount_num) as first_effective_role_amount_num, -- 首日有效创角付费人数
|
|
|
+ ANY_VALUE(new_user_total_effective_role_amount_num) as new_user_total_effective_role_amount_num, -- 新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ ANY_VALUE(first_effective_role_amount_num_cost) as first_effective_role_amount_num_cost, -- 首日有效创角付费成本
|
|
|
+ ANY_VALUE(new_user_total_effective_role_amount_num_cost) as new_user_total_effective_role_amount_num_cost, -- 新用户累计有效创角付费成本
|
|
|
+
|
|
|
+ ANY_VALUE(first_effective_role_amount_num_rate) as first_effective_role_amount_num_rate, -- 首日有效创角付费比
|
|
|
+ ANY_VALUE(new_user_total_effective_role_amount_num_rate) as new_user_total_effective_role_amount_num_rate, -- 新用户累计有效创角付费比
|
|
|
+ ANY_VALUE(first_effective_role_arpu) as first_effective_role_arpu, -- 首日有效创角ARPU
|
|
|
+ ANY_VALUE(new_user_total_effective_role_arpu) as new_user_total_effective_role_arpu -- 新用户累计有效创角ARPU
|
|
|
FROM
|
|
|
ads_game_day
|
|
|
""";
|
|
@@ -2849,7 +2916,30 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
round(IF(SUM(buy_new_user_total_role_num) >0, SUM(cost) / SUM(buy_new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
round(IF(SUM(buy_reg_num) >0, SUM(buy_first_role_num) / SUM(buy_reg_num), 0), 4) first_role_num_rate,
|
|
|
round(IF(SUM(buy_reg_num) >0, SUM(buy_role_num) / SUM(buy_reg_num), 0), 4) role_num_rate,
|
|
|
- round(IF(SUM(buy_reg_num) >0, SUM(buy_new_user_total_role_num) / SUM(buy_reg_num), 0), 4) new_user_total_role_num_rate
|
|
|
+ round(IF(SUM(buy_reg_num) >0, SUM(buy_new_user_total_role_num) / SUM(buy_reg_num), 0), 4) new_user_total_role_num_rate,
|
|
|
+
|
|
|
+ ANY_VALUE(buy_first_effective_role_num) as first_effective_role_num, -- 首日有效创角人数
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_num) as new_user_total_effective_role_num, -- 新用户累计有效创角人数
|
|
|
+ ANY_VALUE(buy_effective_role_num) as effective_role_num, -- 有效创角人数
|
|
|
+
|
|
|
+ ANY_VALUE(buy_first_effective_role_num_rate) AS first_effective_role_rate, -- 首日有效创角率
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_num_rate) as new_user_total_effective_role_num_rate, -- 新用户累计有效创角率
|
|
|
+ ANY_VALUE(buy_effective_role_num_rate) as effective_role_num_rate, -- 有效创角率
|
|
|
+
|
|
|
+ ANY_VALUE(buy_first_effective_role_num_cost) AS first_effective_role_num_cost, -- 首日有效创角成本
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_num_cost) as new_user_total_effective_role_num_cost, -- 新用户累计有效创角成本
|
|
|
+ ANY_VALUE(buy_effective_role_num_cost) as effective_role_num_cost, -- 有效创角成本
|
|
|
+
|
|
|
+ ANY_VALUE(buy_first_effective_role_amount_num) as first_effective_role_amount_num, -- 首日有效创角付费人数
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_amount_num) as new_user_total_effective_role_amount_num, -- 新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ ANY_VALUE(buy_first_effective_role_amount_num_cost) as first_effective_role_amount_num_cost, -- 首日有效创角付费成本
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_amount_num_cost) as new_user_total_effective_role_amount_num_cost, -- 新用户累计有效创角付费成本
|
|
|
+
|
|
|
+ ANY_VALUE(buy_first_effective_role_amount_num_rate) as first_effective_role_amount_num_rate, -- 首日有效创角付费比
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_amount_num_rate) as new_user_total_effective_role_amount_num_rate, -- 新用户累计有效创角付费比
|
|
|
+ ANY_VALUE(buy_first_effective_role_arpu) as first_effective_role_arpu, -- 首日有效创角ARPU
|
|
|
+ ANY_VALUE(buy_new_user_total_effective_role_arpu) as new_user_total_effective_role_arpu -- 新用户累计有效创角ARPU
|
|
|
FROM
|
|
|
game_ads_parent.ads_game_day_parent
|
|
|
""";
|
|
@@ -2903,7 +2993,29 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
round(IF(SUM(nature_new_user_total_role_num) >0, SUM(cost) / SUM(nature_new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
round(IF(SUM(nature_reg_num) >0, SUM(nature_first_role_num) / SUM(nature_reg_num), 0), 4) first_role_num_rate,
|
|
|
round(IF(SUM(nature_reg_num) >0, SUM(nature_role_num) / SUM(nature_reg_num), 0), 4) role_num_rate,
|
|
|
- round(IF(SUM(nature_reg_num) >0, SUM(nature_new_user_total_role_num) / SUM(nature_reg_num), 0), 4) new_user_total_role_num_rate
|
|
|
+ round(IF(SUM(nature_reg_num) >0, SUM(nature_new_user_total_role_num) / SUM(nature_reg_num), 0), 4) new_user_total_role_num_rate,
|
|
|
+ ANY_VALUE(nature_first_effective_role_num) as first_effective_role_num, -- 首日有效创角人数
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_num) as new_user_total_effective_role_num, -- 新用户累计有效创角人数
|
|
|
+ ANY_VALUE(nature_effective_role_num) as effective_role_num, -- 有效创角人数
|
|
|
+
|
|
|
+ ANY_VALUE(nature_first_effective_role_num_rate) AS first_effective_role_rate, -- 首日有效创角率
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_num_rate) as new_user_total_effective_role_num_rate, -- 新用户累计有效创角率
|
|
|
+ ANY_VALUE(nature_effective_role_num_rate) as effective_role_num_rate, -- 有效创角率
|
|
|
+
|
|
|
+ ANY_VALUE(nature_first_effective_role_num_cost) AS first_effective_role_num_cost, -- 首日有效创角成本
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_num_cost) as new_user_total_effective_role_num_cost, -- 新用户累计有效创角成本
|
|
|
+ ANY_VALUE(nature_effective_role_num_cost) as effective_role_num_cost, -- 有效创角成本
|
|
|
+
|
|
|
+ ANY_VALUE(nature_first_effective_role_amount_num) as first_effective_role_amount_num, -- 首日有效创角付费人数
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_amount_num) as new_user_total_effective_role_amount_num, -- 新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ ANY_VALUE(nature_first_effective_role_amount_num_cost) as first_effective_role_amount_num_cost, -- 首日有效创角付费成本
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_amount_num_cost) as new_user_total_effective_role_amount_num_cost, -- 新用户累计有效创角付费成本
|
|
|
+
|
|
|
+ ANY_VALUE(nature_first_effective_role_amount_num_rate) as first_effective_role_amount_num_rate, -- 首日有效创角付费比
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_amount_num_rate) as new_user_total_effective_role_amount_num_rate, -- 新用户累计有效创角付费比
|
|
|
+ ANY_VALUE(nature_first_effective_role_arpu) as first_effective_role_arpu, -- 首日有效创角ARPU
|
|
|
+ ANY_VALUE(nature_new_user_total_effective_role_arpu) as new_user_total_effective_role_arpu -- 新用户累计有效创角ARPU
|
|
|
FROM
|
|
|
game_ads_parent.ads_game_day_parent
|
|
|
""";
|
|
@@ -2958,7 +3070,31 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
round(IF(SUM(new_user_total_role_num) >0, SUM(cost) / SUM(new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
round(IF(SUM(reg_num) >0, SUM(first_role_num) / SUM(reg_num), 0), 4) first_role_num_rate,
|
|
|
round(IF(SUM(reg_num) >0, SUM(role_num) / SUM(reg_num), 0), 4) role_num_rate,
|
|
|
- round(IF(SUM(reg_num) >0, SUM(new_user_total_role_num) / SUM(reg_num), 0), 4) new_user_total_role_num_rate
|
|
|
+ round(IF(SUM(reg_num) >0, SUM(new_user_total_role_num) / SUM(reg_num), 0), 4) new_user_total_role_num_rate,
|
|
|
+
|
|
|
+ ANY_VALUE(first_effective_role_num) as first_effective_role_num, -- 首日有效创角人数
|
|
|
+ ANY_VALUE(new_user_total_effective_role_num) as new_user_total_effective_role_num, -- 新用户累计有效创角人数
|
|
|
+ ANY_VALUE(effective_role_num) as effective_role_num, -- 有效创角人数
|
|
|
+
|
|
|
+ ANY_VALUE(first_effective_role_num_rate) AS first_effective_role_rate, -- 首日有效创角率
|
|
|
+ ANY_VALUE(new_user_total_effective_role_num_rate) as new_user_total_effective_role_num_rate, -- 新用户累计有效创角率
|
|
|
+ ANY_VALUE(effective_role_num_rate) as effective_role_num_rate, -- 有效创角率
|
|
|
+
|
|
|
+ ANY_VALUE(first_effective_role_num_cost) AS first_effective_role_num_cost, -- 首日有效创角成本
|
|
|
+ ANY_VALUE(new_user_total_effective_role_num_cost) as new_user_total_effective_role_num_cost, -- 新用户累计有效创角成本
|
|
|
+ ANY_VALUE(effective_role_num_cost) as effective_role_num_cost, -- 有效创角成本
|
|
|
+
|
|
|
+ ANY_VALUE(first_effective_role_amount_num) as first_effective_role_amount_num, -- 首日有效创角付费人数
|
|
|
+ ANY_VALUE(new_user_total_effective_role_amount_num) as new_user_total_effective_role_amount_num, -- 新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ ANY_VALUE(first_effective_role_amount_num_cost) as first_effective_role_amount_num_cost, -- 首日有效创角付费成本
|
|
|
+ ANY_VALUE(new_user_total_effective_role_amount_num_cost) as new_user_total_effective_role_amount_num_cost, -- 新用户累计有效创角付费成本
|
|
|
+
|
|
|
+ ANY_VALUE(first_effective_role_amount_num_rate) as first_effective_role_amount_num_rate, -- 首日有效创角付费比
|
|
|
+ ANY_VALUE(new_user_total_effective_role_amount_num_rate) as new_user_total_effective_role_amount_num_rate, -- 新用户累计有效创角付费比
|
|
|
+ ANY_VALUE(first_effective_role_arpu) as first_effective_role_arpu, -- 首日有效创角ARPU
|
|
|
+ ANY_VALUE(new_user_total_effective_role_arpu) as new_user_total_effective_role_arpu -- 新用户累计有效创角ARPU
|
|
|
+
|
|
|
FROM
|
|
|
game_ads_parent.ads_game_day_parent
|
|
|
""";
|
|
@@ -3394,7 +3530,31 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
round(IF(SUM(buy_new_user_total_role_num) >0, SUM(cost) / SUM(buy_new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
round(IF(SUM(buy_reg_num) >0, SUM(buy_first_role_num) / SUM(buy_reg_num), 0), 4) first_role_num_rate,
|
|
|
round(IF(SUM(buy_reg_num) >0, SUM(buy_role_num) / SUM(buy_reg_num), 0), 4) role_num_rate,
|
|
|
- round(IF(SUM(buy_reg_num) >0, SUM(buy_new_user_total_role_num) / SUM(buy_reg_num), 0), 4) new_user_total_role_num_rate
|
|
|
+ round(IF(SUM(buy_reg_num) >0, SUM(buy_new_user_total_role_num) / SUM(buy_reg_num), 0), 4) new_user_total_role_num_rate,
|
|
|
+
|
|
|
+ sum(buy_first_effective_role_num) as first_effective_role_num, -- 首日有效创角人数
|
|
|
+ sum(buy_new_user_total_effective_role_num) as new_user_total_effective_role_num, -- 新用户累计有效创角人数
|
|
|
+ SUM(buy_effective_role_num) as effective_role_num, -- 有效创角人数
|
|
|
+
|
|
|
+ ROUND(IFNULL(SUM(buy_first_effective_role_num)/sum(buy_first_role_num),0)*100,2) as first_effective_role_rate, -- 首日有效创角率 = 首日有效创角人数/首日创角人数
|
|
|
+ round(IFNULL(SUM(buy_new_user_total_effective_role_num)/SUM(buy_new_user_total_role_num),0)*100,2) as new_user_total_effective_role_num_rate, -- 新用户累计有效创角率 = 新用户累计有效创角人数/新用户累计创角人数
|
|
|
+ round(IFNULL(SUM(buy_effective_role_num)/SUM(buy_role_num),0)*100,2) as effective_role_num_rate, -- 有效创角率 = 有效创角人数/创角人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(cost)/SUM(buy_first_effective_role_num),0)*100,2) as first_effective_role_num_cost, -- 首日有效创角成本= 消耗/首日有效创角人数
|
|
|
+ round(IFNULL(SUM(cost)/SUM(buy_new_user_total_effective_role_num),0)*100,2) as new_user_total_effective_role_num_cost, -- 新用户累计有效创角成本 = 消耗/新用户累计有效创角人数
|
|
|
+ round(IFNULL(SUM(cost)/sum(buy_effective_role_num),0)*100,2) as effective_role_num_cost, -- 有效创角成本 = 消耗/有效创角人数
|
|
|
+
|
|
|
+ SUM(buy_first_effective_role_amount_num) as first_effective_role_amount_num, -- 首日有效创角付费人数
|
|
|
+ sum(buy_new_user_total_effective_role_amount_num) as new_user_total_effective_role_amount_num, -- 新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(cost)/sum(buy_first_effective_role_amount_num),0)*100,2) as first_effective_role_amount_num_cost, -- 首日有效创角付费成本=消耗/首日有效创角付费人数
|
|
|
+ round(IFNULL(SUM(cost)/SUM(buy_new_user_total_effective_role_amount_num),0)*100,2) as new_user_total_effective_role_amount_num_cost, -- 新用户累计有效创角付费成本=消耗/新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(buy_first_effective_role_amount_num)/SUM(buy_first_new_user_amount_count),0)*100,2) as first_effective_role_amount_num_rate, -- 首日有效创角付费比=首日有效创角付费人数/首日新用户充值人数
|
|
|
+ round(IFNULL(SUM(buy_new_user_total_effective_role_amount_num)/SUM(buy_new_user_total_amount_count),0)*100,2) as new_user_total_effective_role_amount_num_rate, -- 新用户累计有效创角付费比=新用户累计有效创角付费人数/新用户累计充值人数
|
|
|
+ ROUND(IFNULL(SUM(buy_new_user_total_amount)/SUM(buy_new_user_total_effective_role_num),0)*100,2) as first_effective_role_arpu, -- 新用户累计有效创角ARPU=新用户累计充值金额/新用户累计有效创角人数
|
|
|
+ ROUND(IFNULL(SUM(buy_first_new_user_amount)/SUM(buy_first_effective_role_num),0)*100,2) as new_user_total_effective_role_arpu -- 首日有效创角ARPU=首日新用户充值金额/首日有效创角人数
|
|
|
+
|
|
|
FROM game_ads.ads_game_day as a
|
|
|
LEFT JOIN game_dw.dw_game_amount_day_buy
|
|
|
b on a.source_system = b.source_system
|
|
@@ -3446,7 +3606,30 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
round(IF(SUM(nature_new_user_total_role_num) >0, SUM(cost) / SUM(nature_new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
round(IF(SUM(nature_reg_num) >0, SUM(nature_first_role_num) / SUM(nature_reg_num), 0), 4) first_role_num_rate,
|
|
|
round(IF(SUM(nature_reg_num) >0, SUM(nature_role_num) / SUM(nature_reg_num), 0), 4) role_num_rate,
|
|
|
- round(IF(SUM(nature_reg_num) >0, SUM(nature_new_user_total_role_num) / SUM(nature_reg_num), 0), 4) new_user_total_role_num_rate
|
|
|
+ round(IF(SUM(nature_reg_num) >0, SUM(nature_new_user_total_role_num) / SUM(nature_reg_num), 0), 4) new_user_total_role_num_rate,
|
|
|
+
|
|
|
+ sum(nature_first_effective_role_num) as first_effective_role_num, -- 首日有效创角人数
|
|
|
+ sum(nature_new_user_total_effective_role_num) as new_user_total_effective_role_num, -- 新用户累计有效创角人数
|
|
|
+ SUM(nature_effective_role_num) as effective_role_num, -- 有效创角人数
|
|
|
+
|
|
|
+ ROUND(IFNULL(SUM(nature_first_effective_role_num)/sum(nature_first_role_num),0)*100,2) as first_effective_role_rate, -- 首日有效创角率 = 首日有效创角人数/首日创角人数
|
|
|
+ round(IFNULL(SUM(nature_new_user_total_effective_role_num)/SUM(nature_new_user_total_role_num),0)*100,2) as new_user_total_effective_role_num_rate, -- 新用户累计有效创角率 = 新用户累计有效创角人数/新用户累计创角人数
|
|
|
+ round(IFNULL(SUM(nature_effective_role_num)/SUM(nature_role_num),0)*100,2) as effective_role_num_rate, -- 有效创角率 = 有效创角人数/创角人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(cost)/SUM(nature_first_effective_role_num),0)*100,2) as first_effective_role_num_cost, -- 首日有效创角成本= 消耗/首日有效创角人数
|
|
|
+ round(IFNULL(SUM(cost)/SUM(nature_new_user_total_effective_role_num),0)*100,2) as new_user_total_effective_role_num_cost, -- 新用户累计有效创角成本 = 消耗/新用户累计有效创角人数
|
|
|
+ round(IFNULL(SUM(cost)/sum(nature_effective_role_num),0)*100,2) as effective_role_num_cost, -- 有效创角成本 = 消耗/有效创角人数
|
|
|
+
|
|
|
+ SUM(nature_first_effective_role_amount_num) as first_effective_role_amount_num, -- 首日有效创角付费人数
|
|
|
+ sum(nature_new_user_total_effective_role_amount_num) as new_user_total_effective_role_amount_num, -- 新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(cost)/sum(nature_first_effective_role_amount_num),0)*100,2) as first_effective_role_amount_num_cost, -- 首日有效创角付费成本=消耗/首日有效创角付费人数
|
|
|
+ round(IFNULL(SUM(cost)/SUM(nature_new_user_total_effective_role_amount_num),0)*100,2) as new_user_total_effective_role_amount_num_cost, -- 新用户累计有效创角付费成本=消耗/新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(nature_first_effective_role_amount_num)/SUM(nature_first_new_user_amount_count),0)*100,2) as first_effective_role_amount_num_rate, -- 首日有效创角付费比=首日有效创角付费人数/首日新用户充值人数
|
|
|
+ round(IFNULL(SUM(nature_new_user_total_effective_role_amount_num)/SUM(nature_new_user_total_amount_count),0)*100,2) as new_user_total_effective_role_amount_num_rate, -- 新用户累计有效创角付费比=新用户累计有效创角付费人数/新用户累计充值人数
|
|
|
+ ROUND(IFNULL(SUM(nature_new_user_total_amount)/SUM(nature_new_user_total_effective_role_num),0)*100,2) as first_effective_role_arpu, -- 新用户累计有效创角ARPU=新用户累计充值金额/新用户累计有效创角人数
|
|
|
+ ROUND(IFNULL(SUM(nature_first_new_user_amount)/SUM(nature_first_effective_role_num),0)*100,2) as new_user_total_effective_role_arpu -- 首日有效创角ARPU=首日新用户充值金额/首日有效创角人数
|
|
|
FROM game_ads.ads_game_day as a
|
|
|
left join game_dw.dw_game_amount_day_nature d
|
|
|
on a.dt=d.dt and a.game_id = d.nature_game_id
|
|
@@ -3460,53 +3643,78 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
"""
|
|
|
+ amountDayStr("") +
|
|
|
"""
|
|
|
- IFNULL(SUM(first_new_user_amount_count), 0) first_new_user_amount_count,
|
|
|
- IFNULL(SUM(first_new_user_amount_num), 0) first_new_user_amount_num,
|
|
|
- IFNULL(SUM(first_new_user_amount), 0) first_new_user_amount,
|
|
|
- IFNULL(SUM(old_user_count), 0) old_user_count,
|
|
|
- IFNULL(SUM(old_user_num), 0) old_user_num,
|
|
|
- IFNULL(SUM(old_user_amount), 0) old_user_amount,
|
|
|
- IFNULL(SUM(amount_count), 0) amount_count,
|
|
|
- IFNULL(SUM(amount_num), 0) amount_num,
|
|
|
- IFNULL(SUM(amount), 0) amount,
|
|
|
- IFNULL(SUM(new_user_total_amount_count), 0) new_user_total_amount_count,
|
|
|
- IFNULL(SUM(new_user_total_amount_num), 0) new_user_total_amount_num,
|
|
|
- IFNULL(SUM(new_user_total_amount), 0) new_user_total_amount,
|
|
|
- round(if(SUM(cost) > 0 , SUM(first_new_user_amount) / SUM(cost) ,0), 4) first_roi,
|
|
|
- round(if(SUM(reg_num) > 0 , SUM(first_new_user_amount_num) / SUM(reg_num) ,0), 4) first_amount_rate,
|
|
|
- round(if(SUM(reg_num) > 0, SUM(new_user_total_amount_num) / SUM(reg_num), 0) ,4) today_amount_rate,
|
|
|
- round(if(SUM(amount_num) > 0 , SUM(first_new_user_amount_num) / SUM(amount_num) ,0), 4) new_user_rate,
|
|
|
- round(if(SUM(first_new_user_amount_count) > 0, SUM(first_new_user_amount) / SUM(first_new_user_amount_count), 0), 2) first_avg_amount,
|
|
|
- round(if(SUM(new_user_total_amount_count) > 0, SUM(new_user_total_amount) / SUM(new_user_total_amount_count), 0), 2) today_avg_amount,
|
|
|
- round(if(SUM(amount_count) > 0, SUM(amount) / SUM(amount_count), 0), 2) avg_amount,
|
|
|
- round(if(SUM(new_user_total_amount_num) > 0, SUM(reg_order_user_again) / SUM(new_user_total_amount_num), 0), 4) user_again_rate,
|
|
|
- round(if(SUM(reg_num) > 0, SUM(new_user_total_amount) / SUM(reg_num), 0), 2) reg_user_arpu,
|
|
|
- round(if(SUM(first_new_user_amount_num) > 0 , SUM(first_new_user_amount) / SUM(first_new_user_amount_num), 0), 2) first_amount_arpu,
|
|
|
- round(if(SUM(new_user_total_amount_num) > 0 , SUM(new_user_total_amount) / SUM(new_user_total_amount_num), 0), 2) today_amount_arpu,
|
|
|
- round(if(SUM(amount_num) > 0, SUM(amount) / SUM(amount_num), 0), 2) amount_arpu,
|
|
|
- round(if(SUM(reg_num) > 0, SUM(cost) / SUM(reg_num), 0), 2) reg_cost,
|
|
|
- round(if(SUM(first_new_user_amount_num) > 0, SUM(cost) / SUM(first_new_user_amount_num), 0), 2) first_new_user_recharge_cost,
|
|
|
- round(if(SUM(new_user_total_amount_num) > 0, SUM(cost) / SUM(new_user_total_amount_num), 0), 2) total_recharge_cost,
|
|
|
- round(if(SUM(cost) > 0, SUM(new_user_total_amount) / SUM(cost), 0), 4) total_roi,
|
|
|
- SUM(hundred_user_num) hundred_user_num,
|
|
|
- round(IF(SUM(hundred_user_num) > 0, SUM(cost) / SUM(hundred_user_num), 0), 2) hundred_user_num_cost,
|
|
|
- SUM(first_role_num) first_role_num,
|
|
|
- SUM(role_num) role_num,
|
|
|
- SUM(new_user_total_role_num) new_user_total_role_num,
|
|
|
- round(IF(SUM(first_role_num) > 0, SUM(cost) / SUM(first_role_num), 0), 2) first_role_num_cost,
|
|
|
- round(IF(SUM(role_num) > 0, SUM(cost) / SUM(role_num), 0), 2) role_num_cost,
|
|
|
- round(IF(SUM(new_user_total_role_num) >0, SUM(cost) / SUM(new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
- round(IF(SUM(reg_num) >0, SUM(first_role_num) / SUM(reg_num), 0), 4) first_role_num_rate,
|
|
|
- round(IF(SUM(reg_num) >0, SUM(role_num) / SUM(reg_num), 0), 4) role_num_rate,
|
|
|
- round(IF(SUM(reg_num) >0, SUM(new_user_total_role_num) / SUM(reg_num), 0), 4) new_user_total_role_num_rate
|
|
|
- FROM game_ads.ads_game_day as a
|
|
|
- left join game_dw.dw_game_amount_day
|
|
|
- b on a.dt=b.dt and a.game_id = b.game_id
|
|
|
- """;
|
|
|
+ IFNULL(SUM(first_new_user_amount_count), 0) first_new_user_amount_count,
|
|
|
+ IFNULL(SUM(first_new_user_amount_num), 0) first_new_user_amount_num,
|
|
|
+ IFNULL(SUM(first_new_user_amount), 0) first_new_user_amount,
|
|
|
+ IFNULL(SUM(old_user_count), 0) old_user_count,
|
|
|
+ IFNULL(SUM(old_user_num), 0) old_user_num,
|
|
|
+ IFNULL(SUM(old_user_amount), 0) old_user_amount,
|
|
|
+ IFNULL(SUM(amount_count), 0) amount_count,
|
|
|
+ IFNULL(SUM(amount_num), 0) amount_num,
|
|
|
+ IFNULL(SUM(amount), 0) amount,
|
|
|
+ IFNULL(SUM(new_user_total_amount_count), 0) new_user_total_amount_count,
|
|
|
+ IFNULL(SUM(new_user_total_amount_num), 0) new_user_total_amount_num,
|
|
|
+ IFNULL(SUM(new_user_total_amount), 0) new_user_total_amount,
|
|
|
+ round(if(SUM(cost) > 0 , SUM(first_new_user_amount) / SUM(cost) ,0), 4) first_roi,
|
|
|
+ round(if(SUM(reg_num) > 0 , SUM(first_new_user_amount_num) / SUM(reg_num) ,0), 4) first_amount_rate,
|
|
|
+ round(if(SUM(reg_num) > 0, SUM(new_user_total_amount_num) / SUM(reg_num), 0) ,4) today_amount_rate,
|
|
|
+ round(if(SUM(amount_num) > 0 , SUM(first_new_user_amount_num) / SUM(amount_num) ,0), 4) new_user_rate,
|
|
|
+ round(if(SUM(first_new_user_amount_count) > 0, SUM(first_new_user_amount) / SUM(first_new_user_amount_count), 0), 2) first_avg_amount,
|
|
|
+ round(if(SUM(new_user_total_amount_count) > 0, SUM(new_user_total_amount) / SUM(new_user_total_amount_count), 0), 2) today_avg_amount,
|
|
|
+ round(if(SUM(amount_count) > 0, SUM(amount) / SUM(amount_count), 0), 2) avg_amount,
|
|
|
+ round(if(SUM(new_user_total_amount_num) > 0, SUM(reg_order_user_again) / SUM(new_user_total_amount_num), 0), 4) user_again_rate,
|
|
|
+ round(if(SUM(reg_num) > 0, SUM(new_user_total_amount) / SUM(reg_num), 0), 2) reg_user_arpu,
|
|
|
+ round(if(SUM(first_new_user_amount_num) > 0 , SUM(first_new_user_amount) / SUM(first_new_user_amount_num), 0), 2) first_amount_arpu,
|
|
|
+ round(if(SUM(new_user_total_amount_num) > 0 , SUM(new_user_total_amount) / SUM(new_user_total_amount_num), 0), 2) today_amount_arpu,
|
|
|
+ round(if(SUM(amount_num) > 0, SUM(amount) / SUM(amount_num), 0), 2) amount_arpu,
|
|
|
+ round(if(SUM(reg_num) > 0, SUM(cost) / SUM(reg_num), 0), 2) reg_cost,
|
|
|
+ round(if(SUM(first_new_user_amount_num) > 0, SUM(cost) / SUM(first_new_user_amount_num), 0), 2) first_new_user_recharge_cost,
|
|
|
+ round(if(SUM(new_user_total_amount_num) > 0, SUM(cost) / SUM(new_user_total_amount_num), 0), 2) total_recharge_cost,
|
|
|
+ round(if(SUM(cost) > 0, SUM(new_user_total_amount) / SUM(cost), 0), 4) total_roi,
|
|
|
+ SUM(hundred_user_num) hundred_user_num,
|
|
|
+ round(IF(SUM(hundred_user_num) > 0, SUM(cost) / SUM(hundred_user_num), 0), 2) hundred_user_num_cost,
|
|
|
+ SUM(first_role_num) first_role_num,
|
|
|
+ SUM(role_num) role_num,
|
|
|
+ SUM(new_user_total_role_num) new_user_total_role_num,
|
|
|
+ round(IF(SUM(first_role_num) > 0, SUM(cost) / SUM(first_role_num), 0), 2) first_role_num_cost,
|
|
|
+ round(IF(SUM(role_num) > 0, SUM(cost) / SUM(role_num), 0), 2) role_num_cost,
|
|
|
+ round(IF(SUM(new_user_total_role_num) >0, SUM(cost) / SUM(new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
+ round(IF(SUM(reg_num) >0, SUM(first_role_num) / SUM(reg_num), 0), 4) first_role_num_rate,
|
|
|
+ round(IF(SUM(reg_num) >0, SUM(role_num) / SUM(reg_num), 0), 4) role_num_rate,
|
|
|
+ round(IF(SUM(reg_num) >0, SUM(new_user_total_role_num) / SUM(reg_num), 0), 4) new_user_total_role_num_rate,
|
|
|
+
|
|
|
+ sum(first_effective_role_num) as first_effective_role_num, -- 首日有效创角人数
|
|
|
+ sum(new_user_total_effective_role_num) as new_user_total_effective_role_num, -- 新用户累计有效创角人数
|
|
|
+ SUM(effective_role_num) as effective_role_num, -- 有效创角人数
|
|
|
+
|
|
|
+ ROUND(IFNULL(SUM(first_effective_role_num)/sum(first_role_num),0)*100,2) as first_effective_role_rate, -- 首日有效创角率 = 首日有效创角人数/首日创角人数
|
|
|
+ round(IFNULL(SUM(new_user_total_effective_role_num)/SUM(new_user_total_role_num),0)*100,2) as new_user_total_effective_role_num_rate, -- 新用户累计有效创角率 = 新用户累计有效创角人数/新用户累计创角人数
|
|
|
+ round(IFNULL(SUM(effective_role_num)/SUM(role_num),0)*100,2) as effective_role_num_rate, -- 有效创角率 = 有效创角人数/创角人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(cost)/SUM(first_effective_role_num),0)*100,2) as first_effective_role_num_cost, -- 首日有效创角成本= 消耗/首日有效创角人数
|
|
|
+ round(IFNULL(SUM(cost)/SUM(new_user_total_effective_role_num),0)*100,2) as new_user_total_effective_role_num_cost, -- 新用户累计有效创角成本 = 消耗/新用户累计有效创角人数
|
|
|
+ round(IFNULL(SUM(cost)/sum(effective_role_num),0)*100,2) as effective_role_num_cost, -- 有效创角成本 = 消耗/有效创角人数
|
|
|
+
|
|
|
+ SUM(first_effective_role_amount_num) as first_effective_role_amount_num, -- 首日有效创角付费人数
|
|
|
+ sum(new_user_total_effective_role_amount_num) as new_user_total_effective_role_amount_num, -- 新用户累计有效创角付费人数
|
|
|
+
|
|
|
+
|
|
|
+ round(IFNULL(SUM(cost)/sum(first_effective_role_amount_num),0)*100,2) as first_effective_role_amount_num_cost, -- 首日有效创角付费成本=消耗/首日有效创角付费人数
|
|
|
+ round(IFNULL(SUM(cost)/SUM(new_user_total_effective_role_amount_num),0)*100,2) as new_user_total_effective_role_amount_num_cost, -- 新用户累计有效创角付费成本=消耗/新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(first_effective_role_amount_num)/SUM(first_new_user_amount_count),0)*100,2) as first_effective_role_amount_num_rate, -- 首日有效创角付费比=首日有效创角付费人数/首日新用户充值人数
|
|
|
+ round(IFNULL(SUM(new_user_total_effective_role_amount_num)/SUM(new_user_total_amount_count),0)*100,2) as new_user_total_effective_role_amount_num_rate, -- 新用户累计有效创角付费比=新用户累计有效创角付费人数/新用户累计充值人数
|
|
|
+ ROUND(IFNULL(SUM(new_user_total_amount)/SUM(new_user_total_effective_role_num),0)*100,2) as first_effective_role_arpu, -- 新用户累计有效创角ARPU=新用户累计充值金额/新用户累计有效创角人数
|
|
|
+ ROUND(IFNULL(SUM(first_new_user_amount)/SUM(first_effective_role_num),0)*100,2) as new_user_total_effective_role_arpu -- 首日有效创角ARPU=首日新用户充值金额/首日有效创角人数
|
|
|
+ FROM game_ads.ads_game_day as a
|
|
|
+ left join game_dw.dw_game_amount_day
|
|
|
+ b on a.dt=b.dt and a.game_id = b.game_id
|
|
|
+ """;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 游戏每日数据总计sql - 父游戏维度 (新)
|
|
|
+ *
|
|
|
* @param tableType 查询类型
|
|
|
* @return
|
|
|
*/
|
|
@@ -3557,7 +3765,31 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
round(IF(SUM(buy_new_user_total_role_num) >0, SUM(cost) / SUM(buy_new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
round(IF(SUM(buy_reg_num) >0, SUM(buy_first_role_num) / SUM(buy_reg_num), 0), 4) first_role_num_rate,
|
|
|
round(IF(SUM(buy_reg_num) >0, SUM(buy_role_num) / SUM(buy_reg_num), 0), 4) role_num_rate,
|
|
|
- round(IF(SUM(buy_reg_num) >0, SUM(buy_new_user_total_role_num) / SUM(buy_reg_num), 0), 4) new_user_total_role_num_rate
|
|
|
+ round(IF(SUM(buy_reg_num) >0, SUM(buy_new_user_total_role_num) / SUM(buy_reg_num), 0), 4) new_user_total_role_num_rate,
|
|
|
+
|
|
|
+ sum(buy_first_effective_role_num) as first_effective_role_num, -- 首日有效创角人数
|
|
|
+ sum(buy_new_user_total_effective_role_num) as new_user_total_effective_role_num, -- 新用户累计有效创角人数
|
|
|
+ SUM(buy_effective_role_num) as effective_role_num, -- 有效创角人数
|
|
|
+
|
|
|
+ ROUND(IFNULL(SUM(buy_first_effective_role_num)/sum(buy_first_role_num),0)*100,2) as first_effective_role_rate, -- 首日有效创角率 = 首日有效创角人数/首日创角人数
|
|
|
+ round(IFNULL(SUM(buy_new_user_total_effective_role_num)/SUM(buy_new_user_total_role_num),0)*100,2) as new_user_total_effective_role_num_rate, -- 新用户累计有效创角率 = 新用户累计有效创角人数/新用户累计创角人数
|
|
|
+ round(IFNULL(SUM(buy_effective_role_num)/SUM(buy_role_num),0)*100,2) as effective_role_num_rate, -- 有效创角率 = 有效创角人数/创角人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(cost)/SUM(buy_first_effective_role_num),0)*100,2) as first_effective_role_num_cost, -- 首日有效创角成本= 消耗/首日有效创角人数
|
|
|
+ round(IFNULL(SUM(cost)/SUM(buy_new_user_total_effective_role_num),0)*100,2) as new_user_total_effective_role_num_cost, -- 新用户累计有效创角成本 = 消耗/新用户累计有效创角人数
|
|
|
+ round(IFNULL(SUM(cost)/sum(buy_effective_role_num),0)*100,2) as effective_role_num_cost, -- 有效创角成本 = 消耗/有效创角人数
|
|
|
+
|
|
|
+ SUM(buy_first_effective_role_amount_num) as first_effective_role_amount_num, -- 首日有效创角付费人数
|
|
|
+ sum(buy_new_user_total_effective_role_amount_num) as new_user_total_effective_role_amount_num, -- 新用户累计有效创角付费人数
|
|
|
+
|
|
|
+
|
|
|
+ round(IFNULL(SUM(cost)/sum(buy_first_effective_role_amount_num),0)*100,2) as first_effective_role_amount_num_cost, -- 首日有效创角付费成本=消耗/首日有效创角付费人数
|
|
|
+ round(IFNULL(SUM(cost)/SUM(buy_new_user_total_effective_role_amount_num),0)*100,2) as new_user_total_effective_role_amount_num_cost, -- 新用户累计有效创角付费成本=消耗/新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(buy_first_effective_role_amount_num)/SUM(buy_first_new_user_amount_count),0)*100,2) as first_effective_role_amount_num_rate, -- 首日有效创角付费比=首日有效创角付费人数/首日新用户充值人数
|
|
|
+ round(IFNULL(SUM(buy_new_user_total_effective_role_amount_num)/SUM(buy_new_user_total_amount_count),0)*100,2) as new_user_total_effective_role_amount_num_rate, -- 新用户累计有效创角付费比=新用户累计有效创角付费人数/新用户累计充值人数
|
|
|
+ ROUND(IFNULL(SUM(buy_new_user_total_amount)/SUM(buy_new_user_total_effective_role_num),0)*100,2) as first_effective_role_arpu, -- 新用户累计有效创角ARPU=新用户累计充值金额/新用户累计有效创角人数
|
|
|
+ ROUND(IFNULL(SUM(buy_first_new_user_amount)/SUM(buy_first_effective_role_num),0)*100,2) as new_user_total_effective_role_arpu -- 首日有效创角ARPU=首日新用户充值金额/首日有效创角人数
|
|
|
FROM game_ads_parent.ads_game_day_parent as a
|
|
|
LEFT JOIN game_dw_parent.dw_game_amount_day_buy_parent b
|
|
|
on a.source_system = b.source_system
|
|
@@ -3609,7 +3841,30 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
round(IF(SUM(nature_new_user_total_role_num) >0, SUM(cost) / SUM(nature_new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
round(IF(SUM(nature_reg_num) >0, SUM(nature_first_role_num) / SUM(nature_reg_num), 0), 4) first_role_num_rate,
|
|
|
round(IF(SUM(nature_reg_num) >0, SUM(nature_role_num) / SUM(nature_reg_num), 0), 4) role_num_rate,
|
|
|
- round(IF(SUM(nature_reg_num) >0, SUM(nature_new_user_total_role_num) / SUM(nature_reg_num), 0), 4) new_user_total_role_num_rate
|
|
|
+ round(IF(SUM(nature_reg_num) >0, SUM(nature_new_user_total_role_num) / SUM(nature_reg_num), 0), 4) new_user_total_role_num_rate,
|
|
|
+
|
|
|
+ sum(nature_first_effective_role_num) as first_effective_role_num, -- 首日有效创角人数
|
|
|
+ sum(nature_new_user_total_effective_role_num) as new_user_total_effective_role_num, -- 新用户累计有效创角人数
|
|
|
+ SUM(nature_effective_role_num) as effective_role_num, -- 有效创角人数
|
|
|
+
|
|
|
+ ROUND(IFNULL(SUM(nature_first_effective_role_num)/sum(nature_first_role_num),0)*100,2) as first_effective_role_rate, -- 首日有效创角率 = 首日有效创角人数/首日创角人数
|
|
|
+ round(IFNULL(SUM(nature_new_user_total_effective_role_num)/SUM(nature_new_user_total_role_num),0)*100,2) as new_user_total_effective_role_num_rate, -- 新用户累计有效创角率 = 新用户累计有效创角人数/新用户累计创角人数
|
|
|
+ round(IFNULL(SUM(nature_effective_role_num)/SUM(nature_role_num),0)*100,2) as effective_role_num_rate, -- 有效创角率 = 有效创角人数/创角人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(cost)/SUM(nature_first_effective_role_num),0)*100,2) as first_effective_role_num_cost, -- 首日有效创角成本= 消耗/首日有效创角人数
|
|
|
+ round(IFNULL(SUM(cost)/SUM(nature_new_user_total_effective_role_num),0)*100,2) as new_user_total_effective_role_num_cost, -- 新用户累计有效创角成本 = 消耗/新用户累计有效创角人数
|
|
|
+ round(IFNULL(SUM(cost)/sum(nature_effective_role_num),0)*100,2) as effective_role_num_cost, -- 有效创角成本 = 消耗/有效创角人数
|
|
|
+
|
|
|
+ SUM(nature_first_effective_role_amount_num) as first_effective_role_amount_num, -- 首日有效创角付费人数
|
|
|
+ sum(nature_new_user_total_effective_role_amount_num) as new_user_total_effective_role_amount_num, -- 新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(cost)/sum(nature_first_effective_role_amount_num),0)*100,2) as first_effective_role_amount_num_cost, -- 首日有效创角付费成本=消耗/首日有效创角付费人数
|
|
|
+ round(IFNULL(SUM(cost)/SUM(nature_new_user_total_effective_role_amount_num),0)*100,2) as new_user_total_effective_role_amount_num_cost, -- 新用户累计有效创角付费成本=消耗/新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(nature_first_effective_role_amount_num)/SUM(nature_first_new_user_amount_count),0)*100,2) as first_effective_role_amount_num_rate, -- 首日有效创角付费比=首日有效创角付费人数/首日新用户充值人数
|
|
|
+ round(IFNULL(SUM(nature_new_user_total_effective_role_amount_num)/SUM(nature_new_user_total_amount_count),0)*100,2) as new_user_total_effective_role_amount_num_rate, -- 新用户累计有效创角付费比=新用户累计有效创角付费人数/新用户累计充值人数
|
|
|
+ ROUND(IFNULL(SUM(nature_new_user_total_amount)/SUM(nature_new_user_total_effective_role_num),0)*100,2) as first_effective_role_arpu, -- 新用户累计有效创角ARPU=新用户累计充值金额/新用户累计有效创角人数
|
|
|
+ ROUND(IFNULL(SUM(nature_first_new_user_amount)/SUM(nature_first_effective_role_num),0)*100,2) as new_user_total_effective_role_arpu -- 首日有效创角ARPU=首日新用户充值金额/首日有效创角人数
|
|
|
FROM game_ads_parent.ads_game_day_parent as a
|
|
|
left join game_dw_parent.dw_game_amount_day_nature_parent d
|
|
|
on a.dt=d.dt and a.parent_game_id = d.nature_parent_game_id
|
|
@@ -3623,49 +3878,73 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
"""
|
|
|
+ amountDayStr("") +
|
|
|
"""
|
|
|
- IFNULL(SUM(first_new_user_amount_count), 0) first_new_user_amount_count,
|
|
|
- IFNULL(SUM(first_new_user_amount_num), 0) first_new_user_amount_num,
|
|
|
- IFNULL(SUM(first_new_user_amount), 0) first_new_user_amount,
|
|
|
- IFNULL(SUM(old_user_count), 0) old_user_count,
|
|
|
- IFNULL(SUM(old_user_num), 0) old_user_num,
|
|
|
- IFNULL(SUM(old_user_amount), 0) old_user_amount,
|
|
|
- IFNULL(SUM(amount_count), 0) amount_count,
|
|
|
- IFNULL(SUM(amount_num), 0) amount_num,
|
|
|
- IFNULL(SUM(amount), 0) amount,
|
|
|
- IFNULL(SUM(new_user_total_amount_count), 0) new_user_total_amount_count,
|
|
|
- IFNULL(SUM(new_user_total_amount_num), 0) new_user_total_amount_num,
|
|
|
- IFNULL(SUM(new_user_total_amount), 0) new_user_total_amount,
|
|
|
- round(if(SUM(cost) > 0 , SUM(first_new_user_amount) / SUM(cost) ,0), 4) first_roi,
|
|
|
- round(if(SUM(reg_num) > 0 , SUM(first_new_user_amount_num) / SUM(reg_num) ,0), 4) first_amount_rate,
|
|
|
- round(if(SUM(reg_num) > 0, SUM(new_user_total_amount_num) / SUM(reg_num), 0) ,4) today_amount_rate,
|
|
|
- round(if(SUM(amount_num) > 0 , SUM(first_new_user_amount_num) / SUM(amount_num) ,0), 4) new_user_rate,
|
|
|
- round(if(SUM(first_new_user_amount_count) > 0, SUM(first_new_user_amount) / SUM(first_new_user_amount_count), 0), 2) first_avg_amount,
|
|
|
- round(if(SUM(new_user_total_amount_count) > 0, SUM(new_user_total_amount) / SUM(new_user_total_amount_count), 0), 2) today_avg_amount,
|
|
|
- round(if(SUM(amount_count) > 0, SUM(amount) / SUM(amount_count), 0), 2) avg_amount,
|
|
|
- round(if(SUM(new_user_total_amount_num) > 0, SUM(reg_order_user_again) / SUM(new_user_total_amount_num), 0), 4) user_again_rate,
|
|
|
- round(if(SUM(reg_num) > 0, SUM(new_user_total_amount) / SUM(reg_num), 0), 2) reg_user_arpu,
|
|
|
- round(if(SUM(first_new_user_amount_num) > 0 , SUM(first_new_user_amount) / SUM(first_new_user_amount_num), 0), 2) first_amount_arpu,
|
|
|
- round(if(SUM(new_user_total_amount_num) > 0 , SUM(new_user_total_amount) / SUM(new_user_total_amount_num), 0), 2) today_amount_arpu,
|
|
|
- round(if(SUM(amount_num) > 0, SUM(amount) / SUM(amount_num), 0), 2) amount_arpu,
|
|
|
- round(if(SUM(reg_num) > 0, SUM(cost) / SUM(reg_num), 0), 2) reg_cost,
|
|
|
- round(if(SUM(first_new_user_amount_num) > 0, SUM(cost) / SUM(first_new_user_amount_num), 0), 2) first_new_user_recharge_cost,
|
|
|
- round(if(SUM(new_user_total_amount_num) > 0, SUM(cost) / SUM(new_user_total_amount_num), 0), 2) total_recharge_cost,
|
|
|
- round(if(SUM(cost) > 0, SUM(new_user_total_amount) / SUM(cost), 0), 4) total_roi,
|
|
|
- SUM(hundred_user_num) hundred_user_num,
|
|
|
- round(IF(SUM(hundred_user_num) > 0, SUM(cost) / SUM(hundred_user_num), 0), 2) hundred_user_num_cost,
|
|
|
- SUM(first_role_num) first_role_num,
|
|
|
- SUM(role_num) role_num,
|
|
|
- SUM(new_user_total_role_num) new_user_total_role_num,
|
|
|
- round(IF(SUM(first_role_num) > 0, SUM(cost) / SUM(first_role_num), 0), 2) first_role_num_cost,
|
|
|
- round(IF(SUM(role_num) > 0, SUM(cost) / SUM(role_num), 0), 2) role_num_cost,
|
|
|
- round(IF(SUM(new_user_total_role_num) >0, SUM(cost) / SUM(new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
- round(IF(SUM(reg_num) >0, SUM(first_role_num) / SUM(reg_num), 0), 4) first_role_num_rate,
|
|
|
- round(IF(SUM(reg_num) >0, SUM(role_num) / SUM(reg_num), 0), 4) role_num_rate,
|
|
|
- round(IF(SUM(reg_num) >0, SUM(new_user_total_role_num) / SUM(reg_num), 0), 4) new_user_total_role_num_rate
|
|
|
- FROM game_ads_parent.ads_game_day_parent as a
|
|
|
- left join game_dw_parent.dw_game_amount_day_parent as b
|
|
|
- on a.dt = b.dt and a.parent_game_id = b.parent_game_id
|
|
|
- """;
|
|
|
+ IFNULL(SUM(first_new_user_amount_count), 0) first_new_user_amount_count,
|
|
|
+ IFNULL(SUM(first_new_user_amount_num), 0) first_new_user_amount_num,
|
|
|
+ IFNULL(SUM(first_new_user_amount), 0) first_new_user_amount,
|
|
|
+ IFNULL(SUM(old_user_count), 0) old_user_count,
|
|
|
+ IFNULL(SUM(old_user_num), 0) old_user_num,
|
|
|
+ IFNULL(SUM(old_user_amount), 0) old_user_amount,
|
|
|
+ IFNULL(SUM(amount_count), 0) amount_count,
|
|
|
+ IFNULL(SUM(amount_num), 0) amount_num,
|
|
|
+ IFNULL(SUM(amount), 0) amount,
|
|
|
+ IFNULL(SUM(new_user_total_amount_count), 0) new_user_total_amount_count,
|
|
|
+ IFNULL(SUM(new_user_total_amount_num), 0) new_user_total_amount_num,
|
|
|
+ IFNULL(SUM(new_user_total_amount), 0) new_user_total_amount,
|
|
|
+ round(if(SUM(cost) > 0 , SUM(first_new_user_amount) / SUM(cost) ,0), 4) first_roi,
|
|
|
+ round(if(SUM(reg_num) > 0 , SUM(first_new_user_amount_num) / SUM(reg_num) ,0), 4) first_amount_rate,
|
|
|
+ round(if(SUM(reg_num) > 0, SUM(new_user_total_amount_num) / SUM(reg_num), 0) ,4) today_amount_rate,
|
|
|
+ round(if(SUM(amount_num) > 0 , SUM(first_new_user_amount_num) / SUM(amount_num) ,0), 4) new_user_rate,
|
|
|
+ round(if(SUM(first_new_user_amount_count) > 0, SUM(first_new_user_amount) / SUM(first_new_user_amount_count), 0), 2) first_avg_amount,
|
|
|
+ round(if(SUM(new_user_total_amount_count) > 0, SUM(new_user_total_amount) / SUM(new_user_total_amount_count), 0), 2) today_avg_amount,
|
|
|
+ round(if(SUM(amount_count) > 0, SUM(amount) / SUM(amount_count), 0), 2) avg_amount,
|
|
|
+ round(if(SUM(new_user_total_amount_num) > 0, SUM(reg_order_user_again) / SUM(new_user_total_amount_num), 0), 4) user_again_rate,
|
|
|
+ round(if(SUM(reg_num) > 0, SUM(new_user_total_amount) / SUM(reg_num), 0), 2) reg_user_arpu,
|
|
|
+ round(if(SUM(first_new_user_amount_num) > 0 , SUM(first_new_user_amount) / SUM(first_new_user_amount_num), 0), 2) first_amount_arpu,
|
|
|
+ round(if(SUM(new_user_total_amount_num) > 0 , SUM(new_user_total_amount) / SUM(new_user_total_amount_num), 0), 2) today_amount_arpu,
|
|
|
+ round(if(SUM(amount_num) > 0, SUM(amount) / SUM(amount_num), 0), 2) amount_arpu,
|
|
|
+ round(if(SUM(reg_num) > 0, SUM(cost) / SUM(reg_num), 0), 2) reg_cost,
|
|
|
+ round(if(SUM(first_new_user_amount_num) > 0, SUM(cost) / SUM(first_new_user_amount_num), 0), 2) first_new_user_recharge_cost,
|
|
|
+ round(if(SUM(new_user_total_amount_num) > 0, SUM(cost) / SUM(new_user_total_amount_num), 0), 2) total_recharge_cost,
|
|
|
+ round(if(SUM(cost) > 0, SUM(new_user_total_amount) / SUM(cost), 0), 4) total_roi,
|
|
|
+ SUM(hundred_user_num) hundred_user_num,
|
|
|
+ round(IF(SUM(hundred_user_num) > 0, SUM(cost) / SUM(hundred_user_num), 0), 2) hundred_user_num_cost,
|
|
|
+ SUM(first_role_num) first_role_num,
|
|
|
+ SUM(role_num) role_num,
|
|
|
+ SUM(new_user_total_role_num) new_user_total_role_num,
|
|
|
+ round(IF(SUM(first_role_num) > 0, SUM(cost) / SUM(first_role_num), 0), 2) first_role_num_cost,
|
|
|
+ round(IF(SUM(role_num) > 0, SUM(cost) / SUM(role_num), 0), 2) role_num_cost,
|
|
|
+ round(IF(SUM(new_user_total_role_num) >0, SUM(cost) / SUM(new_user_total_role_num), 0), 2) new_user_total_role_num_cost,
|
|
|
+ round(IF(SUM(reg_num) >0, SUM(first_role_num) / SUM(reg_num), 0), 4) first_role_num_rate,
|
|
|
+ round(IF(SUM(reg_num) >0, SUM(role_num) / SUM(reg_num), 0), 4) role_num_rate,
|
|
|
+ round(IF(SUM(reg_num) >0, SUM(new_user_total_role_num) / SUM(reg_num), 0), 4) new_user_total_role_num_rate,
|
|
|
+
|
|
|
+ sum(first_effective_role_num) as first_effective_role_num, -- 首日有效创角人数
|
|
|
+ sum(new_user_total_effective_role_num) as new_user_total_effective_role_num, -- 新用户累计有效创角人数
|
|
|
+ SUM(effective_role_num) as effective_role_num, -- 有效创角人数
|
|
|
+
|
|
|
+ ROUND(IFNULL(SUM(first_effective_role_num)/sum(first_role_num),0)*100,2) as first_effective_role_rate, -- 首日有效创角率 = 首日有效创角人数/首日创角人数
|
|
|
+ round(IFNULL(SUM(new_user_total_effective_role_num)/SUM(new_user_total_role_num),0)*100,2) as new_user_total_effective_role_num_rate, -- 新用户累计有效创角率 = 新用户累计有效创角人数/新用户累计创角人数
|
|
|
+ round(IFNULL(SUM(effective_role_num)/SUM(role_num),0)*100,2) as effective_role_num_rate, -- 有效创角率 = 有效创角人数/创角人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(cost)/SUM(first_effective_role_num),0)*100,2) as first_effective_role_num_cost, -- 首日有效创角成本= 消耗/首日有效创角人数
|
|
|
+ round(IFNULL(SUM(cost)/SUM(new_user_total_effective_role_num),0)*100,2) as new_user_total_effective_role_num_cost, -- 新用户累计有效创角成本 = 消耗/新用户累计有效创角人数
|
|
|
+ round(IFNULL(SUM(cost)/sum(effective_role_num),0)*100,2) as effective_role_num_cost, -- 有效创角成本 = 消耗/有效创角人数
|
|
|
+
|
|
|
+ SUM(first_effective_role_amount_num) as first_effective_role_amount_num, -- 首日有效创角付费人数
|
|
|
+ sum(new_user_total_effective_role_amount_num) as new_user_total_effective_role_amount_num, -- 新用户累计有效创角付费人数
|
|
|
+
|
|
|
+
|
|
|
+ round(IFNULL(SUM(cost)/sum(first_effective_role_amount_num),0)*100,2) as first_effective_role_amount_num_cost, -- 首日有效创角付费成本=消耗/首日有效创角付费人数
|
|
|
+ round(IFNULL(SUM(cost)/SUM(new_user_total_effective_role_amount_num),0)*100,2) as new_user_total_effective_role_amount_num_cost, -- 新用户累计有效创角付费成本=消耗/新用户累计有效创角付费人数
|
|
|
+
|
|
|
+ round(IFNULL(SUM(first_effective_role_amount_num)/SUM(first_new_user_amount_count),0)*100,2) as first_effective_role_amount_num_rate, -- 首日有效创角付费比=首日有效创角付费人数/首日新用户充值人数
|
|
|
+ round(IFNULL(SUM(new_user_total_effective_role_amount_num)/SUM(new_user_total_amount_count),0)*100,2) as new_user_total_effective_role_amount_num_rate, -- 新用户累计有效创角付费比=新用户累计有效创角付费人数/新用户累计充值人数
|
|
|
+ ROUND(IFNULL(SUM(new_user_total_amount)/SUM(new_user_total_effective_role_num),0)*100,2) as first_effective_role_arpu, -- 新用户累计有效创角ARPU=新用户累计充值金额/新用户累计有效创角人数
|
|
|
+ ROUND(IFNULL(SUM(first_new_user_amount)/SUM(first_effective_role_num),0)*100,2) as new_user_total_effective_role_arpu -- 首日有效创角ARPU=首日新用户充值金额/首日有效创角人数
|
|
|
+ FROM game_ads_parent.ads_game_day_parent as a
|
|
|
+ left join game_dw_parent.dw_game_amount_day_parent as b
|
|
|
+ on a.dt = b.dt and a.parent_game_id = b.parent_game_id
|
|
|
+ """;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -3928,21 +4207,21 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
|
|
|
|
|
|
/**
|
|
|
- * Dn的充值金额 / D1-Dn的充值总金额 / Dn的充值人数 /当前消耗(剔除不存在的天数数据) /D1充值金额总和(剔除不存在的天数数据)
|
|
|
+ * Dn的充值金额 / D1-Dn的充值总金额 / Dn的充值人数 /当前消耗(剔除不存在的天数数据) /D1充值金额总和(剔除不存在的天数数据)
|
|
|
* 游戏每日总计趋势sql
|
|
|
*/
|
|
|
- private static String amountDayStr(String type){
|
|
|
+ private static String amountDayStr(String type) {
|
|
|
//拼接查询条件
|
|
|
StringBuilder trendDay = new StringBuilder(StringUtils.EMPTY);
|
|
|
trendDay.append("""
|
|
|
- CONCAT(
|
|
|
- SUM(IF(DATE_ADD(a.dt, INTERVAL 0 day) <= DATE(NOW()), %sda1, 0)),'/',
|
|
|
- IFNULL(sum(%sda1),0),'/',
|
|
|
- sum(ifnull(%sda1_num,0)),'/',
|
|
|
- SUM(IF(DATE_ADD(a.dt, INTERVAL 0 day) <= DATE(NOW()), cost, 0)),'/',
|
|
|
- SUM(IF(DATE_ADD(a.dt, INTERVAL 0 day) <= DATE(NOW()), %sda1, 0))
|
|
|
- ) AS amount_d1 ,
|
|
|
- """.formatted(type, type, type, type));
|
|
|
+ CONCAT(
|
|
|
+ SUM(IF(DATE_ADD(a.dt, INTERVAL 0 day) <= DATE(NOW()), %sda1, 0)),'/',
|
|
|
+ IFNULL(sum(%sda1),0),'/',
|
|
|
+ sum(ifnull(%sda1_num,0)),'/',
|
|
|
+ SUM(IF(DATE_ADD(a.dt, INTERVAL 0 day) <= DATE(NOW()), cost, 0)),'/',
|
|
|
+ SUM(IF(DATE_ADD(a.dt, INTERVAL 0 day) <= DATE(NOW()), %sda1, 0))
|
|
|
+ ) AS amount_d1 ,
|
|
|
+ """.formatted(type, type, type, type));
|
|
|
|
|
|
for (int day = 2; day < 90; day++) {
|
|
|
trendDay.append("""
|
|
@@ -3953,19 +4232,19 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
SUM(IF(DATE_ADD(a.dt, INTERVAL %d day) <= DATE(NOW()), cost, 0)),'/',
|
|
|
SUM(IF(DATE_ADD(a.dt, INTERVAL %d day) <= DATE(NOW()), %sda1, 0))
|
|
|
) AS amount_d%s ,
|
|
|
- """.formatted( day - 1,type,day,type,day - 1,type, day, type, day, day - 1, day - 1, type, day));
|
|
|
+ """.formatted(day - 1, type, day, type, day - 1, type, day, type, day, day - 1, day - 1, type, day));
|
|
|
}
|
|
|
|
|
|
//三月
|
|
|
trendDay.append("""
|
|
|
- CONCAT(
|
|
|
- SUM(IF(DATE_ADD(a.dt, INTERVAL 2 month) <= DATE(NOW()), %sm3-%sda89, 0)),'/',
|
|
|
- IFNULL(sum(%sm3),0),'/',
|
|
|
- sum(ifnull(%sda90_num,0)),'/',
|
|
|
- SUM(IF(DATE_ADD(a.dt, INTERVAL 2 month) <= DATE(NOW()), cost, 0)),'/',
|
|
|
- SUM(IF(DATE_ADD(a.dt, INTERVAL 2 month) <= DATE(NOW()), %sda1, 0))
|
|
|
- ) AS amount_d90 ,
|
|
|
- """.formatted(type, type, type, type,type));
|
|
|
+ CONCAT(
|
|
|
+ SUM(IF(DATE_ADD(a.dt, INTERVAL 2 month) <= DATE(NOW()), %sm3-%sda89, 0)),'/',
|
|
|
+ IFNULL(sum(%sm3),0),'/',
|
|
|
+ sum(ifnull(%sda90_num,0)),'/',
|
|
|
+ SUM(IF(DATE_ADD(a.dt, INTERVAL 2 month) <= DATE(NOW()), cost, 0)),'/',
|
|
|
+ SUM(IF(DATE_ADD(a.dt, INTERVAL 2 month) <= DATE(NOW()), %sda1, 0))
|
|
|
+ ) AS amount_d90 ,
|
|
|
+ """.formatted(type, type, type, type, type));
|
|
|
for (int month = 4; month <= 12; month++) {
|
|
|
trendDay.append("""
|
|
|
CONCAT(
|
|
@@ -3975,7 +4254,7 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
SUM(IF(DATE_ADD(a.dt, INTERVAL %d month) <= DATE(NOW()), cost, 0)),'/',
|
|
|
SUM(IF(DATE_ADD(a.dt, INTERVAL %d month) <= DATE(NOW()), %sda1, 0))
|
|
|
) AS amount_m%s ,
|
|
|
- """.formatted(month -1 , type,month,type,month - 1,type, month, type, month, month - 1,month - 1, type,month));
|
|
|
+ """.formatted(month - 1, type, month, type, month - 1, type, month, type, month, month - 1, month - 1, type, month));
|
|
|
}
|
|
|
// //拼接sum数据
|
|
|
trendDay.append("""
|
|
@@ -5693,9 +5972,9 @@ public class GameDataServiceImpl implements IGameDataService {
|
|
|
|
|
|
//查询总记录数
|
|
|
//默认子游戏
|
|
|
- Sql countSql = Sqls.create(getCountNumSubgameSql2(cri, agentCri, subGameSql,yesterdayTotalAmountCri));
|
|
|
+ Sql countSql = Sqls.create(getCountNumSubgameSql2(cri, agentCri, subGameSql, yesterdayTotalAmountCri));
|
|
|
if (dto.getGameDimension() == 2) {
|
|
|
- countSql = Sqls.create(getCountNumSql(cri, agentCri,yesterdayTotalAmountCri));
|
|
|
+ countSql = Sqls.create(getCountNumSql(cri, agentCri, yesterdayTotalAmountCri));
|
|
|
}
|
|
|
countSql.setCallback(Sqls.callback.integer());
|
|
|
dao.execute(countSql);
|