получить ближайшие местоположения от многих пользователей ко многим местоположениям в пн go дБ в диапазоне дат - PullRequest
0 голосов
/ 27 марта 2020

У меня есть эта схема

var location = new Schema({
  Loc:{
    type : {type:String},
    coordinates:[Number],
  },
  startDate:Date,
  endDate:Date 
})
location.index({Loc: '2dsphere'} , { sparse: true});

var LocationSchema = new Schema({
  name: String,
  locations:[location]
});

Мне нужен запрос, чтобы найти всех пользователей рядом с местоположением в пределах диапазона времени

Я попытался получить ближайшее местоположение, которое я использовал для агрегации и придумал это

{
  '$geoNear': {
    'near': [
      -73.9815103, 40.7475731
    ], 
    'spherical': true, 
    'distanceField': 'dist', 
    'includeLocs': 'locs'
  }
}, {
  '$addFields': {
    'addresses': {
      '$filter': {
        'input': '$locations', 
        'as': 'address', 
        'cond': {
          '$eq': [
            '$$address.Loc', '$locs'
          ]
        }
      }
    }
  }
}

но все же я не могу отфильтровать данные в пределах диапазона дат, у кого-нибудь есть идеи по этому поводу?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...