如何在 mongodb 中找到附近有纬度和经度的地方?

2023-12-28

我对 mongodb 和 golang 很陌生。我有一个名为“myplace”的集合,它具有以下字段:地点名称、城市、纬度、经度。我的问题是某个地方的用户并搜索附近的地方。我如何查询 mongodb 以查找附近的位置。也在golang中。

我的文档结构

{
    "_id" : ObjectId("544a2147785b707b340ed6c7"),
    "latitude" : 12.36547,
    "longitude" : 1.235689,
    "place_name" : "some_place",
    "city" : "Some city"
}

提前致谢


您好,对于您的情况,我认为您应该更改上面的文档,如下所示

    {
    "_id" : ObjectId("545749dba2b0b4cf603a7546"),
    "city" : "B",
    "placeName" : "A",
    "loc" : {
        "lon" : 51.10682735591432,
        "lat" : -114.11773681640625
    }
}
{
    "_id" : ObjectId("545749f3a2b0b4cf603a7547"),
    "city" : "B1",
    "placeName" : "A1",
    "loc" : {
        "lon" : 51.09144802136697,
        "lat" : -114.11773681640625
    }
}

之后对上述文档进行索引如下

db.collectionName.ensureIndex({loc:"2d"})

如果索引正确执行,则编写以下查询来查找附近的文档

db.location.find({loc: {$near:[51,-114]}})

如需更多帮助,您应该参考此 mongo $near 和 $geoNear点击这里 http://docs.mongodb.org/manual/reference/operator/query/near/

对 golang 感到抱歉,因为我不太了解 golang

对于戈兰

var places []Place
lat := 51.515614
long := -0.268998
err = coll.Find(bson.M{"loc": bson.M{"$near": []float64{long, lat}, "$maxDistance" :      0.056}}).All(&places)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 mongodb 中找到附近有纬度和经度的地方? 的相关文章

随机推荐

  • NTLM 身份验证失败,服务器最终响应“401”,但不是“200 OK”

    我正在使用 Node js 通过 NTLM 身份验证连接到服务器 NTLM协议步骤如下 参考 http www innovation ch personal ronald ntlm html http www innovation ch p
  • 使用 python 将纯 JSON 发送到 gRPC 服务器

    我可以使用 grpcurl 向我们启用 gRPC 启用反射的服务器之一发送请求 语法如下 grpcurl plaintext d test input Test 1 2 3 config max results 3 localhost 65
  • Java preg_match 数组

    有绳子strng 如何获得类似数组 arr 0 text1 arr 1 text2 我尝试使用这个 但结果有 而不是数组text1
  • Node.js 续集嵌入 hasMany IDs

    我正在尝试使用 ember data 的 Ember 应用程序和使用 Sequelize js 提供来自 MySQL 的数据的 Node js 后端 我的问题 如果我有一个通过 hasMany 与 Post 模型关联的 Comment 模型
  • 选择打印机并静默打印

    这个答案 https stackoverflow com a 9320649 1804599展示如何在 Google Chrome 中启用静默打印 但是 我有两个网页 必须使用两台不同的打印机进行静默打印 而无需进一步的用户交互 有没有办法
  • 蝗虫请求统计

    我正在考虑使用 Locust 进行一些性能测试 我对 Python 更熟悉 发现 Locust 比 JMeter JMX 更容易阅读 我习惯使用 JMeter 做的一件事是从多次运行中生成我自己的平均值 90 95 和 99 报告 为此 我
  • 通过 BlazeDS 从 Java 到 Flex 的自定义编组

    我的团队正在使用 BlazeDS 将概念验证 Flex 应用程序放在基于 Spring 的服务器之上 我们进行了大量的日期计算 因此我们在整个代码和域模型中广泛使用 Joda Time 我们现在正在尝试弄清楚如何继续在 DTO 中使用 Jo
  • 如何创建具有相同内部IP地址的docker容器?

    我有一个环境 需要在 Docker 容器中运行一些外部软件 该软件尝试通过特定的 IP 地址 例如 192 168 255 2 连接到我们的产品 并且该地址是固定的且无法更改 此外 主机 IP 地址也必须设置为特定 IP 比如说 192 1
  • 从javascript发送时如何保存图像服务器端

    我正在通过阅读大量教程来制作拖放上传脚本 但它们只涵盖了 javascript 部分 而我在 php 部分遇到了问题 我正在上传图像 如下所示 drop zone bind drop drop function drop e e stopP
  • 向dom添加输入字段并在IE中聚焦

    我正在尝试制作一个 div 当您单击它时 它会变成一个输入框 并将其聚焦 我正在使用原型来实现这一点 这在 Chrome 和 Firefox 中都有效 但在 IE 中无效 即使我设置了 1 秒超时 IE 也拒绝聚焦新添加的输入字段 基本上代
  • Android 中按钮单击时的“放大/缩小”图像?

    我是 Android 新手 我遵循了这个问题 并且成功缩放了图像 此代码工作正常 有人可以帮我编写如何在单击按钮时进行缩放的代码吗 我不知道如何完成此任务 这是我遵循的教程教程缩放图像 http asmncl blogspot com 20
  • 如何找到对应 X 值的 Y(隐式函数、复数)

    Given is the equation Y 2 X 3 2 X 3 X Y Assuming the plotted sketch is correct Y 2 X 3 2 X 3 X Y Hint Y 2 X 2 1 gt Y sqr
  • 快速失败和故障安全异常处理原则是否不兼容?

    我想更好地了解什么是快速失败和自动失败 乍一看 快速失败意味着我们希望在任何意外情况发生时让系统明显失败 我的意思是 例如 如果工厂无法创建对象实例 出于快速失败原则 我们真的不希望工厂返回 null 空对象或部分初始化的对象 这些对象可能
  • Rust中Clone是用于在堆上复制,而Copy是用于在堆栈上复制吗?

    正如标题所说 我可以正确地说 Clone 用于在堆上复制 而 Copy 用于在 Rust 中的堆栈上复制吗 这基本上就是这篇文章的内容here https mirror xyz 0xB38709B8198d147cc9Ff9C133838a
  • 我可以在 ag-Grid 中使用异步值设置器(TypeScript 错误)吗?

    我正在使用 ag Grid 和 TypeScript 并尝试创建一个异步价值设定者 https www ag grid com javascript grid value setters 在我的列定义中 const columnDefs C
  • Visual Studio 的未处理异常检查器插件

    我希望能够在编译时询问任何给定的方法 通过调用它可能会引发哪些可能的异常 异常列表应包括任何可能在任何嵌套方法调用中抛出的未捕获的异常 捕获的异常不应包含在列表中 因为我只对可能出现在我自己的代码中的异常感兴趣 是否存在具有该功能或类似功能
  • SQL过滤查询

    我有一个表 其中有许多字段 我正在尝试在 asp net 中创建搜索过滤器 以便用户可以按一个或多个字段的组合进行搜索 所以基本上我想创建一个接受 4 个参数的单个存储过程 如果它不为空 它会将参数附加到 WHERE 子句 TableExa
  • Rails,向新路线添加参数

    The new操作通常不需要参数 因为它从头开始创建新资源 在我的应用程序中 每当我创建某种类型的资源时 就会说book我需要提供一个模板 这是另一个模板的idbook So my new路线总是有一个参数 我不知道如何将这个事实表示为ro
  • 如何使用 VSTS 发布管理部署到 Azure 资源组

    我是 Visual Studio Team Services 发布管理的新手 我的目标是自动将 ASP NET MVC 应用程序部署到 Azure 应用服务 通过尝试不同的方法 我创建了一个基于证书且使用服务主体 SPN 的服务端点 我的构
  • 如何在 mongodb 中找到附近有纬度和经度的地方?

    我对 mongodb 和 golang 很陌生 我有一个名为 myplace 的集合 它具有以下字段 地点名称 城市 纬度 经度 我的问题是某个地方的用户并搜索附近的地方 我如何查询 mongodb 以查找附近的位置 也在golang中 我