считают, что у меня есть коллекция user_events следующим образом:
[
{
"_id" : ObjectId("5be99dd1da8d4a596423a2d2"),
"user_id" : 203302,
"action" : "subscribe",
"created_at" : ISODate("2018-11-12T15:35:45.000Z"),
},
{
"_id" : ObjectId("5be99dd1da8d4a596423a2d2"),
"user_id" : 203302,
"action" : "unsubscribe",
"created_at" : ISODate("2018-10-12T15:35:45.000Z"),
},
...
]
Мне нужно найти пользователей, которые были подписаны на наш сервис как минимум на n дней.каждый пользователь может подписываться и отписываться неограниченное количество раз.Например, пользователь А может подписаться 100 раз и отписаться 100 раз.
, как вы видите, в моих документах есть поле с именем action.Другими словами, мне нужно найти записи для пользователя с интервалом не менее n дней.
, поэтому мой результат будет примерно таким:
[
{
"user_id": 2,
"max_subscription_days": 2
},
{
"user_id(user A)": 5,
"max_subscription_days": 3
},
{
"user_id": 11,
"max_subscription_days": 3
}
]
, но мне нужны пользователи, которыебыли частью службы как минимум n дней.рассмотрим пользователя А, подписавшегося на мой сервис, и через 3 дня отписаться.
и в следующий раз пользователь А снова подписаться на мой сервис и отписаться через 5 дней.Максимальное количество дней подписки для этого пользователя составляет 5
1014 * мой стек: mongodb: 4.0.0
php: 7.2