我尝试执行如下所示的$nearSphere查询:
"coordinates":{
"$nearSphere":{
"$geometry":{
"type":"Point",
"coordinates":[7.16,47.13]}}},问题是它没有返回没有节点"coordinates“的文档(甚至在列表的末尾)。它们是否强制$nearSphere返回没有节点"coordinates“节点的文档(列表末尾)?
发布于 2020-03-15 01:09:35
不,不是在一个查询中。
$nearSphere需要一个地理空间索引。没有坐标的文档被排除在索引之外,基本上对查询是不可见的。
您可以进行第二个查询,在没有坐标tho的情况下查找所有文档:
.find({"coordinates": {$exists: false}})并将应用程序级别上的两个游标合并。
或者,您可以使用$facet在单个管道中运行这两个查询,以组合数据库端的结果。
https://stackoverflow.com/questions/60688425
复制相似问题