c# 在mongo中查询经纬度范围
#region 索引
//IndexKeysDocument doc = new IndexKeysDocument();//新建索引
//2d 平面坐标索引,适用于基于平面的坐标计算。也支持球面距离计算,不过官方推荐使用2dsphere索引
//BsonValue value = BsonValue.Create("2d");//创建2d索引
//2dsphere 几何球体索引,适用于球面几何运算
//不过,只要坐标跨度不太大(比如几百几千公里),这两个索引计算出的距离相差几乎可以忽略不计
//BsonValue value = BsonValue.Create("2dsphere");//创建2d索引
//doc.Add("loc", value);//loc为数据库中2d索引的对象名称
//table.CreateIndex(doc);//创建索引
#endregion
double y = 26.0623344427;
double x = 119.2916107177;
double maxDistance = 0.5;//单位:公里(千米)
double earchR = 6378137 / 1000.0;//6378137:地球半径,单位:米
double distance = maxDistance / earchR;
IMongoQuery query = Query.WithinCircle("loc", x, y, distance, true);
IMongoQuery query1 = Query.Near("loc", x, y, distance, true);
var _location = new GeoJsonPoint<GeoJson2DGeographicCoordinates>(new GeoJson2DGeographicCoordinates(x, y));
IMongoQuery query2 = Query.Near("loc", _location, distance, true);
ConcurrentBag<double> bags = new ConcurrentBag<double>();
double totaletime = 0;
int max = 1000;
Parallel.For(0, max, (i) =>
{
DateTime start = DateTime.Now;
var finds = table.Find(query1).AsQueryable().ToList();
double etime = (DateTime.Now - start).TotalSeconds;
bags.Add(etime);
});
c# 在mongo中查询经纬度范围的更多相关文章
- 从区划边界geojson中查询经纬度坐标对应的省市区县乡镇名称,开源Java工具,内存占用低、高性能
目录 坐标边界查询工具:AreaCity-Query-Geometry 性能测试数据 测试一:Init_StoreInWkbsFile 内存占用很低(性能受IO限制) 测试二:Init_StoreIn ...
- mongo中查询Array类型的字段中元素个数
I have a MongoDB collection with documents in the following format: { "_id" : ObjectId(&qu ...
- mongo中的模糊查询
以下是一个mongo查询的综合应用,即介绍一个生产中实际应用的模糊查询,当然其实也很简单,主要用到mongo中的模糊查询和$or查询,以及并的关系,下面是一个mongo中的一条记录 { "_ ...
- Mongo简单查询总结
mongo 简单查询db.ansheng.findOne()//返回第一条匹配到的数据db.ansheng.findOne({"aaaaa":4})db.ansheng.find( ...
- Mongo中更新总结
mongo中的更新其实也可以当做添加来使用 mongo中跟新有几种方式 save.update.upsert 执行save的时候如果这个文档有_id这个参数,save 会调用 upsert,否则会调用 ...
- mongo中的游标与数据一致性的取舍
除了特殊注释外,本文的测试结果均基于 spring-data-mongodb:1.10.6.RELEASE(spring-boot-starter:1.5.6.RELEASE),MongoDB 3.0 ...
- mongo中游标
1.手动循环访问游标 mongo中我们常用的查询方式db.collection.find()方法其实返回的就是游标,只不过我们并未给返回的游标分配变量,我们所看到的的查询数据也就是游标自动迭代得出的( ...
- mongo中命令工作原理
1.db.runCommand命令 db.runCommand({OPTION:'COLLECTION_NAME'}) runCommand命令是mongo的执行命令,可以执行mongo的任何命令,其 ...
- MongoDB数据库中查询数据(下)
MongoDB数据库中查询数据(下) 在find中,options参数值为一个对象,用来设置查询数据时使用的选项,下面我们来对该参数值对象中可以使用的属性进行介绍: 1. fields; 该属性值为一 ...
随机推荐
- LeetCode 896 Monotonic Array 解题报告
题目要求 An array is monotonic if it is either monotone increasing or monotone decreasing. An array A is ...
- 《HTTP - 基于http的认证》
推荐一首歌 - 好吧,今天刚入职第二天,也没听歌. 哈哈哈哈. 1:何为认证? - 其实这个问题就比较宽泛了,总的来说,就是你有证明你身份的标识. - 和人类社会一样,你花了钱想看一场场演唱会,但是谁 ...
- ELKstack5.6.5
ELKstack 安装: 一:环境准备: 1.给添加块磁盘50G,相当于模拟raid 2.分别给它们做本机的主机解析 [root@node01 ~ ]#cat /etc/hosts 127.0.0. ...
- 【pyqtgraph】pyqtgraph-鼠标互动
pyqtgraph绘图库官方文档学习-鼠标互动(mouse interaction) 鼠标互动 大多数使用pyqtgraph数据可视化的应用程序都会生成可以使用鼠标进行交互式缩放,平移和配置的小部件. ...
- 从EnableJpaRepositories说开去
1 .spring boot @EnableJpaRepositories( repositoryBaseClass = BaseRepositoryImpl.class, includeFilter ...
- 图解HTTP笔记
http 0.9 1990年 http 1.0 1996年 Tcp/Ip分层模型 应用层: 如Ftp Http DNS. 传输层: 如 TCP UDP .将报文分成报文段.“传输”指的是端对端( ...
- (4.22)Microsoft 管理控制台启用 SSL 加密的 SQL Server 实例
如何通过使用 Microsoft 管理控制台启用 SSL 加密的 SQL Server 实例 关键词:MSSQL加密,sql server加密,sql server客户端与服务器传输内容加密 转自:h ...
- (4.23)sql server区服大小写的检索
是的,SQL Server数据库可以区分大小写.区分大小写意味着SQL Server将为CASE,Case,CaSe等返回不同的结果集,并将所提到的字符串视为3个不同的字符串.区分大小写的数据库具有区 ...
- 笔记:mysql升序排列asc,降序排列desc
经常会忘记mysql中升序和降序用什么字符来表示,现在就做个笔记:升序排列asc,降序排列desc,举个例子,下面是按时间降序调用栏目的文章,也即是栏目最新文章 [e:loop={"sele ...
- 火币网API文档——REST 行情、交易API简介
REST API 简介 火币为用户提供了一套全新的API,可以帮用户快速接入火币PRO站及HADAX站的交易系统,实现程序化交易. 访问地址 适用站点 适用功能 适用交易对 https://api.h ...