$size

在本页面

  • $size
    • $size运算符可将任何数组与参数指定的元素数进行匹配。例如:
db.collection.find( { field: { $size: 2 } } );

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

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

$size不接受值范围。要基于元素数量不同的字段选择文档,请创建一个计数器字段,当您将元素添加到字段时,该计数器字段会增加。

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

Additional Examples

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

有关查询的其他示例,请参见: