-
形状索引查看全部
-
与其他 数据 哭 最大的优点查看全部
-
sql数据库 与 NOsql数据库 的 差别查看全部
-
网站: 1 www.mongodb.org 2查看全部
-
哈哈查看全部
-
GOOD查看全部
-
全文索引使用限制查看全部
-
简单运维查看全部
-
MongoDB概念查看全部
-
熟悉 网站查看全部
-
索引笔记查看全部
-
学习网站查看全部
-
>db.location.find({w:{$geoWithin:{$box:[[0,0],[3,3]]}}}) #左边界,右边界,矩形查找 >db.location.find({w:{$geoWithin:{$center:[[0,0],5]}}}) # 圆心,半径,圆形查找 >db.location.find({w:{$geoWithin:{$polygon:[[0,0],[0,1],[2,5],[7,8]]}}}) #多边形查看全部
-
2d和2dsphere可区别为是使用平面距离计算还是使用球面距离计算。 2d平面地理位置索引的创建方式为: >db.collection.ensureIndex({w:"2d"}) #w是字段名 在Mongodb中使用经纬度表示位置,格式[经度,纬度] 取值范围:经度[-180,180]纬度[-90,90] #插入数据 >db.location.insert({w:[1,1]}) >db.location.insert({w:[1,2]}) >db.location.insert({w:[5,6]}) >db.location.insert({w:[200,1]}) #Mongodb会直接报错,经度超出范围 >db.location.insert({w:[180,100]}) #纬度超出范围,Mongodb并没有报错,但是后期查询会出现不可预知的错误。 >db.location.insert({w:[79,76]}) 2d索引的查询方式有两种 (1)$near查询:查询距离某个点最近的点,默认返回100个最近的点 (2)$geoWithin查询:查询某个形状内的点。 a.$near查询 >db.location.find({w:{$near:[1,1]}}) #默认返回100个 可通过$maxDistance来限制查找的最远距离 >db.location.find({w:{$near:[1,1],$maxDistance:10}}) #限制查找最远距离为10 b.$geoWithin查询 形状有三种表示方式 1)$box:矩形,使用{$box:[[<x1>,<y1>],[<x2>,<y2>]]}表示,内部是两个坐标,第一个代表左边界,第二个代表右边界。 2)$center:圆形,使用{$center:[[<x1>,<y1>],r]}表示,内部是圆心位置和半径。 3)$polygon:多边形,使用{$polygon:[[<x1>,<y1>],[<x2>,<y2>],[<x3>,<y3>]]}表示,内部是坐标点,坐标点围成一个多边形。查看全部
-
地理位置索引概念: 将一些点的位置存储在MongoDB中,创建索引后,可以按照位置来查找其他点。 地理位置索引分为两类: 1.2D索引,用于存储和查找平面上的点。 2.2Dsphere索引,用于存储和查找球面上的点。 例如: 查找距离某个点一定距离内的点。 查找包含在某区域内的点。查看全部
举报
0/150
提交
取消