充值排行sql优化
This commit is contained in:
parent
72fa3d1204
commit
3d2abb6e14
@ -839,6 +839,23 @@ addHours("#event_time", 8) >= '{stat_date}' AND addHours("#event_time", 8) <= '{
|
||||
`#event_name` = 'create_account' and is_new_device = 1) b on a.`#distinct_id`= b.`#distinct_id` and a.date = b.date
|
||||
GROUP BY toDate(addHours("#event_time", 8))"""
|
||||
|
||||
# 排行榜前100名提取优化处理
|
||||
if event_name_display == '充值排行':
|
||||
game = self.game
|
||||
# 截取原始sql中动态条件部分
|
||||
aaa = r'WHERE(.*?)GROUP'
|
||||
bbb = re.findall(aaa, str(sql))
|
||||
dt_where = bbb[0]
|
||||
sql = f"""
|
||||
SELECT toDate(addHours({game}.event."#event_time", 8)) AS date,{game}.event."#account_id",
|
||||
round(sum(if({game}.event."#event_name" = 'pay', {game}.event."unitPrice", 0)) / 100,2) AS values
|
||||
FROM {game}.event
|
||||
WHERE {dt_where} and {game}.event.`#account_id` in (
|
||||
SELECT {game}.event."#account_id"
|
||||
FROM {game}.event
|
||||
WHERE {dt_where} GROUP BY {game}.event."#account_id"
|
||||
ORDER BY round(sum(if({game}.event."#event_name" = 'pay', {game}.event."unitPrice", 0)) / 100,2) AS values desc LIMIT 100)
|
||||
GROUP BY toDate(addHours({game}.event."#event_time", 8)),{game}.event."#account_id" ORDER BY date LIMIT 100000"""
|
||||
sqls.append({'sql': sql,
|
||||
'group_label': self.group_label,
|
||||
'groupby': [i.key for i in self.groupby],
|
||||
|
Loading…
Reference in New Issue
Block a user