首页 > 解决方案 > 从 mongodb 地理位置索引中查找集合中不存在的随机位置

问题描述

有没有办法在一个范围之间找到一组空坐标,我想在 mi 2d 空间上找到一个空点。索引是这样设置的db.Collection.createIndex( { location : "2d" },{ min : 0 , max : 1200 } )

创建新用户时会收到一个随机位置。最简单的方法是将所有可能的位置注册为 userId 为 null 并做一个样本来分配它,或者获取随机的坐标集并查看密钥是否存在。但如果可能的话,我宁愿不这样做,因为我计划为每个区域设置一个 1200x1200 矩阵,并将区域定义为分片键。文档具有以下结构:

{
    "_id":{"$oid":"5f2b3b8b3cb6228324938929"},
    "location":[1,2],
    "zone":1,
    "userId":{"$oid":"5f2b3b8b3cb6228324938929"}
}

标签: mongodbmongodb-querygeolocationaggregation-framework

解决方案


推荐阅读