Menu Docs
Página inicial do Docs
/
MongoDB Shell
/

Consultar documentos

Nesta página

  • Leia todos os documentos em uma coleção
  • Especifique uma condição de igualdade
  • Especifique condições usando operadores de consulta
  • Especificar operadores lógicos (AND/OR)
  • Comportamento de leitura
  • Tutoriais de consultas adicionais

Utilize o método db.collection.find() no MongoDB Shell para consultar documentos em uma coleção.

Os exemplos nesta página referenciam o conjunto de dados de amostra do Atlas. Você pode criar um cluster do Atlas gratuito e preencher este agrupamento com dados de amostra para acompanhar junto com estes exemplos. Para mais informações, consulte Iniciar com Atlas.

Para ler todos os documentos na coleção, passe um documento vazio como parâmetro de filtro de query para o método de localização. O parâmetro do filtro de query determina os critérios de seleção.

Exemplo

Para devolver todos os documentos da coleção sample_mflix.movies:

use sample_mflix
db.movies.find()

Esta operação é equivalente à seguinte declaração SQL:

SELECT * FROM movies

Para selecionar documentos que correspondam a uma condição de igualdade, especifique a condição como um par <field>:<value> no documento de filtro de query.

Exemplo

Para retornar todos os filmes onde title é igual a Titanic da coleção sample_mflix.movies :

use sample_mflix
db.movies.find( { "title": "Titanic" } )

Esta operação corresponde à seguinte declaração SQL:

SELECT * FROM movies WHERE title = "Titanic"

Use operadores de query em um documento de filtro de query para realizar comparações e avaliações mais complexas. Os operadores de query em um documento de filtro de query têm o seguinte formulário:

{ <field1>: { <operator1>: <value1> }, ... }

Exemplo

Para retornar todos os filmes da coleção sample_mflix.movies com classificação PG ou PG-13:

use sample_mflix
db.movies.find( { rated: { $in: [ "PG", "PG-13" ] } } )

Esta operação corresponde à seguinte declaração SQL:

SELECT * FROM movies WHERE rated in ("PG", "PG-13")

Observação

Embora você possa expressar esta consulta utilizando o operador $or, utilize o operador $in e não o operador $or ao executar verificações de igualdade no mesmo campo.

Uma consulta composta pode especificar condições para mais de um campo nos documentos da coleção. Implicitamente, uma conjunção lógica do AND conecta as cláusulas de uma consulta composta para que a consulta selecione os documentos na coleção que correspondem a todas as condições.

Exemplo

Para devolver filmes que foram lançados no México e têm uma classificação no IMDB de pelo menos 7:

use sample_mflix
db.movies.find( { countries: "Mexico", "imdb.rating": { $gte: 7 } } )

Utilize o operador $or para especificar uma query composta que se junta a cada cláusula com uma conjunção lógica do OR para que a query selecione os documentos na coleção que correspondem a pelo menos uma condição.

Exemplo

Para retornar filmes da coleção sample_mflix.movies que foram lançados em 2010 e ganharam pelo menos 5 prêmios ou têm genre de Drama:

use sample_mflix
db.movies.find( {
year: 2010,
$or: [ { "awards.wins": { $gte: 5 } }, { genres: "Drama" } ]
} )

Para saber mais sobre o comportamento específico dos documentos de leitura, consulte Comportamento.

Para exemplos de consulta adicionais, consulte:

Voltar

Insert