Mongodb 如何做到这一点$“近球”;是否还返回没有任何坐标的项目?

Mongodb 如何做到这一点$“近球”;是否还返回没有任何坐标的项目?,mongodb,mongodb-query,Mongodb,Mongodb Query,我尝试执行如下的$nearSphere查询: "coordinates":{ "$nearSphere":{ "$geometry":{ "type":"Point", "coordinates":[7.16,47.13]}}}, 问题是它不会返回没有节点“坐标”(即使在列表末尾)的文档。它们是一种强制$nearSphere返回没有节点“坐标”节点的文档(在列表末尾)的方法吗?否,不是在单个查询中 $nearSphere需要地理空间索引。没有坐标的文档将从索

我尝试执行如下的
$nearSphere
查询:

"coordinates":{
  "$nearSphere":{
    "$geometry":{
      "type":"Point",
      "coordinates":[7.16,47.13]}}},

问题是它不会返回没有节点“
坐标”
(即使在列表末尾)的文档。它们是一种强制
$nearSphere
返回没有节点“
坐标
”节点的文档(在列表末尾)的方法吗?

否,不是在单个查询中

$nearSphere需要地理空间索引。没有坐标的文档将从索引中排除,并且基本上对查询不可见

您可以进行第二次查询以查找所有不带坐标的文档,方法如下:

.find({"coordinates": {$exists: false}})
并在应用程序级别上合并两个游标


或者,您可以使用$facet在单个管道中运行这两个查询,以便在数据库端组合结果。

否,不是在单个查询中

$nearSphere需要地理空间索引。没有坐标的文档将从索引中排除,并且基本上对查询不可见

您可以进行第二次查询以查找所有不带坐标的文档,方法如下:

.find({"coordinates": {$exists: false}})
并在应用程序级别上合并两个游标

或者,您可以使用$facet在单个管道中运行这两个查询,以在数据库端合并结果