MongoDB中地理空间查询运算符相关问题 20C

现在最新的MongoDB版本为3.6,根据官网上的描述图片说明 前三个貌似支持吃2d索引,现在官网建议是使用2dsphere,解决具体的业务,比如我们有一个区域查物的功能,这个区域可能是多边形,矩形或者圆形,那么如果我们的数据库表建立的是2dsphere 虽然也能查,但是其实是不走索引的,必须建立2d索引才行,有没有什么办法是我建立的是2dshpere索引,有相关的办法可以替代。

1个回答

针对查找指定范围内车辆信息的功能,一般的图形无非就是多边形,矩形,圆形,而我们可以认为矩形是一种特殊的多边形。
直接使用的方法就是 geoWithin https://docs.mongodb.com/manual/reference/operator/query/geoWithin/
6.1、geoWithin可以没有地理空间索引,但是也可以同时支持2d和2dsphere索引,geoWithin的超找范围支持到多边形,注意
使用时第一个点必须和最后一个点一样,否则会报错。
针对圆形,官网直接提供了centerSphere https://docs.mongodb.com/manual/reference/operator/query/centerSphere/
centerSphere 可以没有地理空间索引,但是也可以同时支持2d和2dsphere索引
使用centerSphere ,最后一个参数为弧度,计算方式为:
英里/3963.2 公里/6,378.1
https://docs.mongodb.com/manual/tutorial/calculate-distances-using-spherical-geometry-with-2d-geospatial-indexes/index.html

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
mongodb 空间查询
空间查询 [code="java"]gis.realtime_gps.find({ "gpsDetail" : { "$within" : { "$polygon" : { a : { x : -180, y : -90 }, b : { x : -180, y : 90 }, c : { x : 180, y : 90 }, d : { x : 180, y : -90} } } } })[/...
mongodb - 空间查询
$geoIntersectsdb.getCollection('geo').find({ boundary: { $geoIntersects: { $geometry: { type: type, coordinates: coor } } } })Notes 1. type值首字母必
MongoDB 副本集,偶数节点问,分片,地理空间查询
副本集 Windows创建副本集步骤: (1)创建3个数据目录和3个日志文件: cd C:\mongodb\data md mongo1 md mongo2 md mongo3 md logs/mongo1.log md logs/mongo2.log md logs/mongo3.log (2)接下来启动Mongo服务器。加上replSet标记,取名为book,并指定端口。打开re
mongodb地理查询问题
请问怎么查询两个多边形是否相交?例如,根据一个多边形查询与此多边形相交的网格(交集不包含网格中心点)。
FreeDraw绘制地理空间查询的区域F
FreeDraw允许您在Leaflet.js地图图层上自由绘制形状
MongoDB的地理空间索引
db.users.ensureIndex({"position" : "2d"}) MongoDb就会在position这个键上建立二维的地理索引。position的值必须是某种形式的一对值,一个包含两个元素的数组或者包含两个键的内嵌文档,比如: {"position" : [34, 67]} {"position" : {"latitude" : 33, "longitude" : 67}
mongodb运算符
mongodb运算符文档不好找,这里给个传送门: 链接:https://docs.mongodb.com/manual/reference/operator/query/ 也可以参考我搬运过来的(中文内容为谷歌翻译): 比较查询运算符 名称 描述 $eq 匹配等于指定值的值。 $gt 匹配大于指定值的值。 $gte 匹配大于或等于指定值的值。 $in 匹配数组中指定的...
空间查询
/** * 空间查询:点击某点,红色高亮显示该点所在区域(未成功!无法同步发布查询?)异步查询成功 */ Button sQuery = (Button) findViewById(R.id.squery); sQuery.setOnClickListener(new View.OnClickListener() { @Override public void onClick
基于mongodb的地理检索实现
使用mongoDB不是很多,记得以前做“家长助手”的时候,使用过一点。只是在去年做“派单系统”的时候,又再一次使用mongoDB。在这里先简单介绍一下派单系统,派单系统在云足疗(O2O,上门足疗)里一个专门负责订单派送,提高订单完成效率的一个系统。主要是当一个来了之后,会根据订单的服务项目、服务时间和服务地点,快速找到最合适最优秀的技师,返回给用户。由于上门足疗特殊行业的要求,不能给订单指定技师直
MongoDB小结26 - 地理空间索引
现在有一种查询变得越来越流行(尤其是移动设备):找到离当前位置最近的N个场所。 MongoDB专为平面坐标查询做了专门的索引,称为地理空间索引。 同样需要用ensureIndex创建,不过,参数是两个 "2d" db.map.ensureIndex({"gps":"2d"}) gps键的值必须是某种形式的一对值:一个包含两个元素的数组或者包含两个键的内嵌文档,像这样 {...
第七讲 空间查询 - 空间查询
全局讲解ArcGIS Engine开发课程,初级学习
springmvc mongodb 地理范围查询
springmvc、mongodb、2D索引、附近查询
指派运算符 的相关问题
#includernint main(void)rnrn int c;rn c = 1.6 + 1.7;rn printf("first is %f\n",(float)c);rn c = 1.6 +1.7;rn printf("end is %d\n",(int)c);rn return 0;rnrnrn 结果rn first is 3.000000rn end is 3rnrn 第一个结果中, 我指定了 C 的类型为 float。 原来的 int 与此冲突?rn 否则怎么出现个 3.000000?rn 求解~~rn (书上没有介绍此用法)rn 原来的用法是这样。 【【【【【【【【【【【【【【rn#includernint main(void)rnrn int c;rn c = 1.6 + 1.7;rn printf("first is %d\n",c);rn c =(int) 1.6 +(int)1.7;rn printf("end is %d\n",c);rn return 0;rnrn 将 1.6 和1.7 指派为 int 类型。 从而截尾,即 c = 1 + 1;rn
MongoDB - 空间数据存储、建立索引、空间查询
MongoDB支持空间数据的存储,不过限制了类型必须为GeoJSON。 MongoDB可以满足一些空间查询的需求,对于不需要空间数据处理的项目极为方便,不需要第三方库来充当空间数据的操作层。 MongoDB可以为GeoJSON类型数据建立索引,提升空间查询的效率。
mongodb聚合管道运算符
1.算术表达式运算符 算术表达式对数字执行数学运算。一些算术表达式也可以支持日期算术。 名称 描述 $abs 返回数字的绝对值。 $add 添加数字以返回总和,或添加数字和日期以返回新日期。如果添加数字和日期,请将数字视为毫秒。接受任意数量的参数表达式,但最多只能有一个表达式解析为日期。 $ceil 返回大于或等于指定数字的最小整数。...
mongodb运算符参考
mongodb是介于关系型和列存储数据库之间数据库,支持很多类似sql的查询方式
mongodb更新运算符
字段 名称 描述 $currentDate 将字段的值设置为当前日期,可以是Date或Timestamp。 $inc 按指定的数量增加字段的值。 $min 仅当指定的值小于现有字段值时才更新字段。 $max 仅当指定的值大于现有字段值时才更新字段。 $mul 将字段的值乘以指定的量。 $rename 重命名字段。 $s...
4python操作mongoDB运算符
尹成老师带你步入python爬虫的殿堂,讲课生动风趣、深入浅出,全套视频内容充实,整个教程以python语言为核心,完整精彩的演练了python爬虫操作流程以及各种精彩的小项目等,非常适合大家学习!
C/C++中运算符相关
【一、运算符相关】参考:https://blog.csdn.net/tangyanzhi1111/article/details/21696943          https://blog.csdn.net/violet_echo_0908/article/details/47395875          https://blog.csdn.net/senyelicone/article/de...
MongoDB相关
MongoDB权威指南第2版,MongoDB实战,深入学习MongoDb
知乎爬虫相关问题存到mongoDB中
http://blog.csdn.net/lxb1022/article/details/75258021按照这个博主的文章成功爬取到了知乎的内容,只是中间有两处改动。 1.输入验证码的地方raw_input改为了input 我们来看input的源码def input(prompt): return eval(raw_input(prompt))so,input等价于eval(raw_inp
更深入地理解自增自减运算符
public class DeepTest { public static void main(String[] args) { int a = 0; int b = 0; int i = 10; while (i > 0) { i--; a = a++; b = ++b; } System.out.println("a=" + a)...
mongodb计算地理空间距离实例
[size=large]需求:有很多条件,其中包括根据附近多少米查找信息,这个需要先定位当前人所在的位置(即经纬度),然后在进行这个经纬度的附近进行查找信息,因为之前根据经纬度算地理空间位置是在mysql中进行的,但是发现在mysql中计算很耗CPU,现特改成mongodb来做,mongodb不支持union all功能,所以mongodb还是不满足[/size]: [code="java"] ...
空间查询(ArcEngine)
基于ArcEngine的GIS软件二次开发 实现地图空间查询功能(通过在地图上画多边形查询所选要素的属性表) 通过画多边形实现空间查询 如果需要通过画直线查询属性,只需将代码注释段 的注释去掉,再将其下面的那段代码注释起来即可!
oracle空间查询
表空间使用情况: SELECT UPPER(F.TABLESPACE_NAME) "表空间名",   D.TOT_GROOTTE_MB "表空间大小(M)",   D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",   TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_M...
Neo4j 空间查询
1. Neo4j自带函数进行简单计算 Neo4j自带distance(point1, point2)函数,返回一个浮点数,表示同一坐标参照系中两点之间的测地距离,可以使用round函数来进行四舍五入。 目前Neo4j3.3版本不支持return直接返回Point类型,3.4版本可以。 节点类型 节点格式 详情 WGS...
Arcgis空间查询
ArcGis 空间查询,Arcengine基于C#开发, 用于查询图层的信息
MySQL的空间查询
一、前言 MySQL实施了OGC建议的具有Geometry类型的SQL环境的一个子集。该术语指的是用一组集合类型扩展的环境。具有几何值的SQL列是作为拥有集合类型的列实施的。该规范描述了SQL几何类型集合,以及作用在这些类型上用于创建和分析几何值的函数。关于MySQL空间存储和查询的概念介绍,可以参考这篇博客,写的很详细: https://blog.csdn.net/zzq900503/art...
空间查询与空间分析
空间查询与空间分析技术操作规程,适合老师和初学者下载学习,有助于提高空间查询和空间分析技术理论的理解。
九、mongodb之评估查询运算符
                  &amp
mysql空间查询
今天要做一个根据经纬度获取位置信息的功能(百度地图也提供了相应接口,由于请求频率限制,没有使用),于是用到了mysql的空间查询: 1.创建表: CREATE TABLE `xiaoqu` ( `ID` int(11) NOT NULL, `name` varchar(255) DEFAULT NULL, `code` varchar(255) DEFAULT NULL,
十二、mongodb之数组更新运算符
                  &amp
七、mongodb之逻辑查询运算符
        &amp
十、mongodb之数组查询运算符
达瓦
八、mongodb之元素查询运算符
           &a
Supermap空间查询
属性与图形之间的关联查询、属性条件查询 (SQL)、复杂空间关系查询和关联属性表查询
mongo 空间查询
$geoIntersects { <location field>: { $geoIntersects: { $geometry: { type: "<GeoJSON object type>" , coordinates: [ <coordinates> ] } ...
[AE] ArcGIS Engine - 属性查询与空间查询 - QueryFilter|SpatialFilter
ArcGIS Engine空间查询。
mongoose 空间查询
  工作中我用了Koa2做了后台,选用了mongo数据库。因为要用到空间查询显示当前地图视图的空间查询结果,经过一番搜索,总算解决了。   mongoose支持的空间查询方式有near,box,circle以及geometry等等,基本满足了业务需求。我只用到了box查询,所以下面就分享一下我是如何使用的: model设计   设计model时一定要设计好geom结构,不然提示报错。最开始我...
Solr 空间查询
URL: http://127.0.0.1:8080/solr/usercard/select/?q=*%3A*&version=2.2&start=0&rows=10&indent=on&&fq={!geofilt%20sfield=location}&pt=39.885,116.384034&d=1   Official...
相关热词 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池 c#5.0 安装程序 c# 分页算法