0
我在BigQuery中有一个160GB的数据库,代表上个月从应用发送的事件。每行都有(除其他外)日期字段,userId字段和事件字段。如何通过BigQuery中的两个字段进行有效分组?
我需要做的是找出有多少独特用户在某一天使用过该应用。例如,如果用户X在2017年9月15日前使用过应用三次,那么当天只计算一次,但如果他在2017年9月15日,2017年9月16日和2017年9月17日期间使用了该应用,在那些日子里每一天都只算他一次(只有一次)。
我试图做的是用户id和日期用户组,然后分别计算的用户id号为每个日期,例如:
SELECT
userId,
DATE(date) AS date_conv
FROM
[TABLE]
WHERE
userId IS NOT NULL
GROUP BY
date_conv,
userId
ORDER BY
userId
然而,该查询返回“资源突破”,甚至随着计费层次的增加,如果能够采用更有效的方式,那将会很不错。
谢谢。这工作很快,实际上使用少量的资源。 – leonz
@leonz。 。 。很高兴知道。我添加了一个在Postgres和其他数据库中更好的替代方案。 –