MongoDb: $ geoIntersects для нескольких входных координат - PullRequest
0 голосов
/ 10 ноября 2018

У меня есть список координат для каждой из них, мне нужно выполнить запрос $ geoIntersects . Для одной координаты запрос выглядит так:

db.polygons.find({ 
    geometry: { 
        $geoIntersects: {
            $geometry: {
                type: "Point", coordinates: [24.053640, 49.812427]
            } 
        } 
    } 
})

Проблема в том, что существует список входных координат, и для каждой из них мне нужно найти многоугольник. Единственный способ, который я нашел, - это перебирать их в коде приложения и выполнять запрос N раз.

Возможно ли сделать это одним запросом MongoDB? Если нет, то любые идеи о том, как это можно оптимизировать, приветствуются.

1 Ответ

0 голосов
/ 15 ноября 2018

Одним из возможных решений является замена типа геометрии Point на MultiPoint и передача списка входных координат в виде массива.

...