Definição
$query
Observação
Descontinuado desde a v3.2
A partir de3.2 v, o operador
$query
mongosh
é preterido no . Em ,mongosh
use os métodos de cursor.O operador
$query
força o MongoDB a interpretar uma expressão como uma query.As seguintes operações
mongosh
são equivalentes e retornam apenas os documentos na collection chamadoscollection
onde o campoage
é igual a25
.db.collection.find( { $query: { age : 25 } } ) db.collection.find( { age : 25 } ) $query
é necessário trabalhar com documentos que contenham um nome de campoquery
cujo valor é um documento incorporado, como o documento a seguir:{ _id: 1, age: 25, query: { a: 1 } } A seguinte operação de localização que não utiliza o operador
$query
não retornará resultados:db.documents.find( { query: { a: 1 } } ) Para obter o documento, você precisará usar a seguinte query:
db.documents.find( { "$query": { query: { a: 1 } } } ) Dica
Para mais informações sobre queries no MongoDB , consulte Documentos de Query,
db.collection.find()
e Getting Started with MongoDB.Observação
Não combine formulários de consulta. Se você usar o formato
$query
, não acrescente métodos de cursor aofind()
. Para modificar a query, use os operadores de meta-query, como$explain
.Portanto, as duas operações a seguir são equivalentes:
db.collection.find( { $query: { age : 25 }, $explain: true } ) db.collection.find( { age : 25 } ).explain()