2

我有一组从应用程序发送给不同用户的响应。每个响应都有一个 user_id 和敏锐创建的时间戳。

我想运行一项常规作业,为那些上次响应时间超过 7 天(或其他任何时间)的用户返回 user_ids。

我不能只过滤 7 天前的时间戳 GTE,因为用户可以在一段时间内有多个响应。我只想知道用户最后一次回复是什么时候。

我不能使用提取最新事件,因为这似乎是整个集合。在这种情况下,最后 10 个事件可能都由一个用户完成。

我想为每个用户知道大于 7 天前的最新事件。

4

1 回答 1

4

尝试使用两个不同的查询来删除活动用户。一个用于 active_users,另一个用于 all_users。请参见下面的示例:

active_users = Keen.select_unique("responses", :target_property => "user_id", :timeframe => "this_7_days")

all_users = Keen.select_unique("responses", :target_property => "user_id")

inactive_users = all_users - active_users

puts inactive_users
于 2015-02-17T23:20:59.827 回答