1
私は2つのコレクションServiceProviderとParentを持っています。Mongo指定された場所から10マイル以内のすべての文書を取得
のServiceProvider(_id、ServiceProviderID、...)
両親(_id、ID、場所:[緯度、ロング]、...)のServiceProviderコレクションの
ServiceProviderIDがリンクされています親コレクションのIDに変換します。
私はすべてのサービスプロバイダーを10マイル以内に欲しいです。
基本的に私はServiceProviderとParentsコレクションに加わり、10マイル以内にすべてのServiceProviderをリストしたいと思います。
db.ServiceProvider.aggregate([
{
$lookup:
{
from: "Parents",
localField: "ServiceProviderID",
foreignField: "ID",
as: "ServiceProviderArr"
}
},
{
$match: { "ServiceProviderArr": { $ne: [] } }
}
])
それは私に次のような結果得られます:私はよく理解していれば、このクエリは何が必要かもしれません
{
"_id" : ObjectId("577cc2ce588aec59178b4567"),
...
"ServiceProviderArr" : [
{
"_id" : ObjectId("577cbe33588aecf6168b45c6"),
"ID" : "193",
...
"Location" : {
"Lat" : "40.75368539999999",
"Long" : "-73.9991637"
}
}
]
}
私の答えはあなたの質問を解決しましたか? – sergiuz
@SergiuZaharieはい、あなたの答えは本当に役に立ちました。ありがとう! – Chinmay