Pour un objet, je veux associer plusieurs paires lat/lng, de sorte que lorsque je reçois ma géolocalisation, je peux obtenir l'objet le plus proche de moi [c.-à-d. Bien que je sache faire une recherche géospatiale si un objet ne possède qu'une seule paire lat/lng, je suis bloqué à cette recherche géospatiale multiple. Je me demande comment y parvenir avec MySQL, Sphinx ou MongoDB? S'il y a d'autres technologies qui peuvent y parvenir, je serais également reconnaissant d'en être informé. Merci beaucoup!Recherche un-à-plusieurs géospatiale
0
A
Répondre
1
Vous pouvez utiliser un tableau d'emplacements dans MongoDB.
> db.array.insert({locs:[ [ 1, 2], [1.5, 1.8], [2, 1] ]})
Inserted 1 record(s) in 134ms
> db.array.ensureIndex({locs:'2d'})
Inserted 1 record(s) in 6ms
> db.array.insert({locs:[ [ 1, 2], [7.5, 1.8], [2, 5] ]})
Inserted 1 record(s) in 2ms
> db.array.find({locs:{$near:[1,2]}})
{ "_id" : ObjectId("51a193f11192cab2195f7a8a"), "locs" : [ [ 1, 2 ], [ 1.5, 1.8 ], [ 2, 1 ] ] }
{ "_id" : ObjectId("51a1940b1192cab2195f7a8c"), "locs" : [ [ 1, 2 ], [ 7.5, 1.8 ], [ 2, 5 ] ] }
{ "_id" : ObjectId("51a193f11192cab2195f7a8a"), "locs" : [ [ 1, 2 ], [ 1.5, 1.8 ], [ 2, 1 ] ] }
{ "_id" : ObjectId("51a193f11192cab2195f7a8a"), "locs" : [ [ 1, 2 ], [ 1.5, 1.8 ], [ 2, 1 ] ] }
{ "_id" : ObjectId("51a1940b1192cab2195f7a8c"), "locs" : [ [ 1, 2 ], [ 7.5, 1.8 ], [ 2, 5 ] ] }
{ "_id" : ObjectId("51a1940b1192cab2195f7a8c"), "locs" : [ [ 1, 2 ], [ 7.5, 1.8 ], [ 2, 5 ] ] }
Fetched 6 record(s) in 8ms
1
Créer une nouvelle table - une relation 1-à-meny. Donc, ayez votre table d'objets, et deuxième avec un object_id et un lat/long. Si un objet a plusieurs emplacements, il a plusieurs lignes dans cette nouvelle table.
Ensuite, recherchez simplement cette nouvelle table comme vous le feriez autrement. (soit ce mysql ou sphinx)
(Vous avez déjà une réponse pour MongoDB :)
Questions connexes
- 1. Recherche géospatiale
- 2. MongoDB recherche géospatiale par zip
- 3. MySQL-Solr pour la recherche géospatiale
- 4. solr: multivalué recherche géospatiale - retour point le plus proche
- 5. Mise à jour le document MongoDB pour géospatiale recherche
- 6. Comment se déplacer dans la recherche géospatiale de Solr 4?
- 7. MongoDB: combiner la recherche de texte et la requête géospatiale
- 8. groupe mongo état géospatiale
- 9. Représentation géospatiale d'une pièce?
- 10. MongoDB - Problème de distance géospatiale
- 11. Analyse géospatiale avec AWS Redshift
- 12. Comment stocker l'information géospatiale dans MongoDB
- 13. Comment exécuter une requête géospatiale dans Mongo?
- 14. MongoDB avec Mongoid dans Rails - Indexation géospatiale
- 15. Index géospatiale pour la structure intérieure
- 16. Quel CMS/Framework open source pour administrer l'application web de recherche Solr géospatiale?
- 17. Message d'erreur lors de l'utilisation d'indexation géospatiale via Mongoose
- 18. Calcul de la distance géospatiale avec les radians
- 19. index géospatial MongoDB sur un tableau (multitouche + géospatiale)
- 20. Comparaison de la prise en charge géospatiale pour mongodb et postgis
- 21. Création d'une requête géospatiale pour trouver deux utilisateurs dans l'autre rayon de
- 22. Comment faire cercle aller à l'aide des commandes de géospatiale gorethinkdb
- 23. recherche de recherche rapide
- 24. Recherche avec recherche d'emplacement
- 25. Recherche plein texte recherche
- 26. Comment puis-je implémenter l'outil de recherche de dessin personnalisé utilisé dans l'application iPad Realtor?
- 27. Grails recherche recherche BigDecimal gamme
- 28. Recherche avancée option Recherche Sharepoint
- 29. Hibernate Recherche vs Recherche personnalisée
- 30. recherche MySQL de recherche basé