Docs 菜单
Docs 主页
/
MongoDB Manual
/ / / /

$size

在此页面上

  • 兼容性
  • 其他示例
$size

$size 运算符将任何数组与参数指定的元素数相匹配。

可以使用 $size 查找托管在以下环境中的部署:

  • MongoDB Atlas:用于云中 MongoDB 部署的完全托管服务

  • MongoDB Enterprise:基于订阅、自我管理的 MongoDB 版本

  • MongoDB Community:源代码可用、免费使用且可自行管理的 MongoDB 版本

以以下示例为例:

db.collection.find( { field: { $size: 2 } } );

此查询返回 collectionfield 为包含 2 个元素的数组的所有文档。例如,上述表达式将返回 { field: [ red, green ] }{ field: [ apple, lime ] },但不会返回 { field: fruit }{ field: [ orange, lemon, grapefruit ] }。要匹配数组中只有一个元素的字段,请使用 $size 并将其值设为 1,如下所示:

db.collection.find( { field: { $size: 1 } } );

$size 不接受值范围。要根据具有不同元素数量的字段选择文档,创建一个计数器字段,该计数器字段会在您向字段添加元素时递增。

查询不能对查询的 $size 部分使用索引,但查询的其他部分可以使用索引(如果适用)。

有关查询数组的其他示例,请参阅:

有关查询的其他示例,请参阅查询文档。

提示

另请参阅:

后退

$elemMatch

在此页面上