Mongodb 查询修饰符
除MongoDB查询运算符之外,我们还有许多元操作可用于修改查询的输出或行为。
db.collection.find( { <query> } )._addSpecial( <option> )
db.collection.find( { $query: { <query> }, <option> } )
修饰符
$comment
通过comment运算符,可以在任何上下文中向查询添加注释。
语法:
db.collection.find( { <query> } )._addSpecial( "$comment", <comment> )
$explain
explain修饰符提供有关查询计划的详细信息。它返回一个文件,该文件描述了用于返回查询的过程和索引。尝试优化查询时,它可能会提供有用的见解。
语法:
db.example.find( { $query: {}, $explain: 1 } )
$hint
hint运算符现在在mongo shell中已弃用。提示运算符将优化程序附加到使用声明的索引来完成查询的过程。它也用于测试查询性能和索引策略。
语法:
db.users.find().hint( { age: 1 } )
$max
自v3.2起,在mongo shell中已弃用max运算符。它定义了一个最大值,用于指定给定索引的排他上限,以限制find()的结果。
语法:
db.example.find( { <query> } ).max( { field1: <max value>, ... fieldN: <max valueN> } )
$maxTimeMS
自v3.2起也已弃用。它定义了以毫秒为单位的累积时间,用于在光标上进行处理操作。
语法:
db.collection.find().maxTimeMS(100)
$min
min运算符用于查找最小值,以声明指定索引的所包含下限,以约束find()的结果。
语法:
db.collection.find( { <query> } ).min( { field1: <min value>, ... fieldN: <min valueN>} )
$orderby
orderby运算符以升序或降序排列查询结果。
语法:
db.collection.find().sort( { age: -1 } )
$query
它使用MongoDB强制将表达式解释为查询。
语法:
db.collection.find( { $query: { age : 25 } } )
db.collection.find( { age : 25 } )
$returnKey
returnKey返回查询结果的索引字段。如果returnkey operator设置为true,则返回的文档将不包含任何字段。
语法:
db.collection.find( { <query> } )._addSpecial( "$returnKey", true )
db.collection.find( { $query: { <query> }, $returnKey: true } )
$showDiskLoc
showDiskLoc运算符将字段添加到结果文档中。添加的diskLoc字段的值是一个包含磁盘位置详细信息的文档。
语法:
"$diskLoc": {
"file": <int>,
"offset": <int>
}
$natural
natural运算符是一种特殊的排序顺序运算符,它通过
cursor.hint()使用磁盘上的文档顺序排列文档。 strong>。