Я застрял на домашнем задании, касающемся использования оболочки Mongodb для запроса двух наборов геопространственных данных.Которые таковы:
Пример записи из набора данных ресторанов:
{
"_id" : ObjectId("55cba2476c522cafdb053ae8"),
"location" : {
"coordinates" : [
-73.9973325,
40.61174889999999
],
"type" : "Point"
},
"name" : "C & C Catering Service"
}
Пример записи из набора данных почтовых индексов:
{
"_id" : "01002",
"city" : "CUSHMAN",
"loc" : [
-72.51565,
42.377017
],
"pop" : 36963,
"state" : "MA"
}
Вопрос: Для каждого ресторана «Пицца» из указанного выше набора найдите город, в котором он находится. Можно предположить, что ресторан расположен в ближайшем к его месту городе.
Я создал переменную для поиска пиццы.рестораны:
var pizza = db.restaurants.find({"name" : /pizza/i});
Я создал эти индексы, но не уверен, что погода нужна для составного индекса.
db.zipcodes.createIndex({"loc" : "2dsphere"});
db.restaurants.createIndex({"location" : "2dsphere"});
Верны ли эти индексы?и если да, что я должен использовать для создания запроса?Агрегировать, а также $ nearSphere?