我有一个非常大的数据库(约600万行)从csv文件导入。 我在查看MongoDB及其关于GeoSpatial索引的文档。您需要将纬度和经度字段嵌入到数组中。不幸的是,我输入的结构有单独的字段。MongoDB地理空间查询没有嵌入纬度经纬度字段
“纬度”:54.770233, “东经”:-6.537741,
有查询数据库,计算25英哩半径之内二十最近的文档中使用的54和经度纬度点的任何可能的方式的-6。
我创建的查询在MySQL的罚款:
SELECT *,(3959 * ACOS(COS(RADIANS(54))* COS(RADIANS(latitude
))* COS(RADIANS(longitude
) - RADIANS( - 6))+ SIN(RADIANS(54))* SIN(RADIANS(latitude
))))AS距离 FROM TABLE_NAME HAVING距离 ORDER BY距离 LIMIT 0,20
然而,我不确定如何在没有嵌入字段的Mongo中执行此操作。
任何帮助将不胜感激。
运行更新所有文档的正确脚本是什么? – user1313125 2012-04-11 13:13:30
这是find()。forEach('...在我的示例代码中的部分。 – 2012-04-11 13:26:32
谢谢,我正在运行该脚本。不幸的是,它看起来可能需要相当长的一段时间。在不同的数据库上进行测试后。 – user1313125 2012-04-12 13:56:41