As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
$near
O $near operador no Amazon DocumentDB é usado para encontrar documentos que estão geograficamente próximos a um ponto especificado. Ele retorna documentos ordenados por distância, com os documentos mais próximos primeiro. Esse operador requer um índice geoespacial 2dsphere e é útil para consultas de proximidade em dados de localização.
Parâmetros
-
$geometry: Um objeto GeoJSON Point que define o ponto central para a consulta próxima. -
$maxDistance: (opcional) A distância máxima em metros do ponto especificado que um documento pode estar para corresponder à consulta. -
$minDistance: (opcional) A distância mínima em metros do ponto especificado que um documento pode estar para corresponder à consulta.
Requisitos de índice
-
2dsphere index: Obrigatório para consultas geoespaciais em dados do GeoJSON Point.
Exemplo (MongoDB Shell)
O exemplo a seguir demonstra como usar o $near operador para encontrar os restaurantes mais próximos de um local específico em Seattle, Washington.
Crie documentos de amostra
db.usarestaurants.insert([ { "name": "Noodle House", "city": "Seattle", "state": "Washington", "rating": 4.8, "location": { "type": "Point", "coordinates": [-122.3517, 47.6159] } }, { "name": "Pike Place Grill", "city": "Seattle", "state": "Washington", "rating": 4.2, "location": { "type": "Point", "coordinates": [-122.3403, 47.6062] } }, { "name": "Lola", "city": "Seattle", "state": "Washington", "rating": 4.5, "location": { "type": "Point", "coordinates": [-122.3407, 47.6107] } } ]);
Crie um índice 2dsphere
db.usarestaurants.createIndex({ "location": "2dsphere" });
Exemplo de consulta com GeoJSON Point
db.usarestaurants.find({ location: { $near: { $geometry: { type: "Point", coordinates: [-122.3516, 47.6156] }, $maxDistance: 100, $minDistance: 10 } } });
Saída
{
"_id" : ObjectId("69031ec9ea1c2922a1ce5f4a"),
"name" : "Noodle House",
"city" : "Seattle",
"state" : "Washington",
"rating" : 4.8,
"location" : {
"type" : "Point",
"coordinates" : [ -122.3517, 47.6159 ]
}
}
Exemplos de código
Para ver um exemplo de código para usar o $near comando, escolha a guia do idioma que você deseja usar: