$max¶
-
$max
¶ Specify a
$max
value to specify the exclusive upper bound for a specific index in order to constrain the results offind()
. Themongo
shell provides thecursor.max()
wrapper method:You can also specify the option with either of the two forms:
The
$max
specifies the upper bound for all keys of a specific index in order.Consider the following operations on a collection named
collection
that has an index{ age: 1 }
:This operation limits the query to those documents where the field
age
is less than100
using the index{ age: 1 }
.You can explicitly specify the corresponding index with
cursor.hint()
. Otherwise, MongoDB selects the index using the fields in theindexBounds
; however, if multiple indexes exist on same fields with different sort orders, the selection of the index may be ambiguous.Consider a collection named
collection
that has the following two indexes:Without explicitly using
cursor.hint()
, MongoDB may select either index for the following operation:Use
$max
alone or in conjunction with$min
to limit results to a specific range for the same index, as in the following example:Note
Because
cursor.max()
requires an index on a field, and forces the query to use this index, you may prefer the$lt
operator for the query if possible. Consider the following example:The query uses the index on the
age
field, even if the index on_id
may be better.