-je utiliser MongoDB pour enregistrer les données temporelles et spatiales, et l'élément de document est structuré comme suit:comment faire face à une requête compliquée dans mongodb?
doc = { time:t,
geo:[x,y]
}
Si les différents de deux documents sont définis comme:
dist(doc1, doc2) = |t1-t2| + |x1-x2| + |y1 - y2|
Comment puis-je interroger les documents par mongodb et trier les résultats par leur distance à un document donné doc0 = {temps: t0, geo: [x0, y0]}?
grâce
Vous pouvez utiliser le [cadre d'agrégation] (http://docs.mongodb.org/manual/applications/agrégation/) pour une requête complexe comme celle-ci. Voir les '$ add' et' $ subtract' [opérateurs de projection arithmétique] (http://docs.mongodb.org/manual/reference/aggregation/#arithmetic-operators). – JohnnyHK