python操作mongodb之八地理索引空间数据
2024-08-27 08:00:48
from pymongo import MongoClient, GEO2D
#使用geo_example库
db = MongoClient('192.168.30.252',27017).geo_example
#创建索引在places上的loc列
db.places.create_index([("loc",GEO2D)])
#插入坐标数据
result = db.places.insert_many([{"loc": [2, 5]},{"loc":[30, 5]},{"loc": [1, 2]},{"loc": [4, 4]}]) #查询离[3,6]最近的坐标
for doc in db.places.find({"loc": {"$near": [3, 6]}}).limit(3):
repr(doc) from bson.son import SON
#增加最大距离
query = {"loc": SON([("$near", [3, 6]), ("$maxDistance", 2)])} #在(2,2) (5,6)lower-left and upper-right
query = {"loc": {"$within": {"$box": [[2, 2], [5, 6]]}}}
for doc in db.places.find(query).sort('_id'):
repr(doc) #在半径为6的圆内
query = {"loc": {"$within": {"$center": [[0, 0], 6]}}}
for doc in db.places.find(query).sort('_id'):
repr(doc) from bson.son import SON
db.command(SON([('geoNear', 'places'), ('near', [1, 2])]))
最新文章
- jQuery实践-网页版2048小游戏
- iOS开发系列—Objective-C之基础概览
- PHP中return 和 exit 、break和contiue 区别与用法
- Linux之head、tail、grep、cut等命令详解
- 安装并配置前端自动化工具——grunt
- 2015多校.MZL's endless loop(欧拉回路的机智应用 || 构造)
- 原生js实现跑马灯抽奖效果
- Windows 服务器使用FTP出现“当前的安全设置不允许从该位置下载文件"; 警告
- 小技巧:SystemTray中进行操作提示
- Sublime Text 3使用技巧总结--快捷键及常用插件
- MVC4,MVC3,VS2012+ entity framework Migration from Sqlserver to Mysql
- JAVA 多线程(4)
- zombodb 几点说明
- github上值得关注的前端项目【转】
- python第十六天,昨天来晚了,作业终于完成了
- maven项目有红叉,感叹号如何解决?
- centos7安装webmin
- 08 正则表达式,Math类,Random,System类,BigInteger,BigDecimal,Date,DateFormat,Calendar
- 菜鸟学习Spring Web MVC之一
- zookeeper注册中心安装(单机版)