文档菜单
文档首页
/
MongoDB 手册
/ / / /

$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