Menu Docs

Página inicial do DocsDesenvolver aplicaçõesManual do MongoDB

Documentos de consulta

Nesta página

  • Selecionar todos os documentos de uma Coleção
  • Especificar condição de igualdade
  • Especifique condições usando operadores de query
  • Especificar AND Condições
  • Especificar OR Condições
  • Especifique AND e também OR condições
  • Fazer query de documentos com o Atlas MongoDB
  • Tutoriais de queries adicionais
  • Comportamento
  • Métodos e opções adicionais

Você pode consultar documentos no MongoDB usando os seguintes métodos:

  • O driver da sua linguagem de programação.

  • A UI do MongoDB Atlas. Para saber mais, consulte Fazer queries de documentos com o MongoDB Atlas.

  • MongoDB Compass.


➤ Use o menu suspenso Selecione a linguagem no canto superior direito para definir a linguagem dos exemplos a seguir ou selecione MongoDB Compass.


Esta operação usa um predicado de filtro de {}, que corresponde à seguinte instrução SQL:

SELECT * FROM inventory

O exemplo a seguir seleciona da coleção inventory todos os documentos em que o status é igual a "D":

Esta operação usa um predicado de filtro de { status: "D" }, que corresponde à seguinte instrução SQL:

SELECT * FROM inventory WHERE status = "D"

O exemplo seguinte recupera todos os documentos da coleção inventory onde status é igual a "A" ou "D":

Observação

Embora você possa expressar esta query utilizando o operador $or, utilize o operador $in ao invés do operador $or ao executar verificações de igualdade no mesmo campo.

A operação usa um predicado de filtro de { status: { $in: [ "A", "D" ] } }, que corresponde à seguinte instrução SQL:

SELECT * FROM inventory WHERE status in ("A", "D")

Consulte o documento Operadores de Query e Projeção para obter a lista completa de operadores de query MongoDB.

Uma query 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 query composta para que a query selecione os documentos na coleção que correspondem a todas as condições.

O exemplo a seguir recupera todos os documentos na coleção inventory onde o status é igual a "A" e qty é menor que ($lt) 30:

A operação usa um predicado de filtro de { status: "A", qty: { $lt: 30 } }, que corresponde à seguinte instrução SQL:

SELECT * FROM inventory WHERE status = "A" AND qty < 30

Consulte Operadores de comparação para outros operadores de comparação MongoDB.

Usando o $or query, você pode especificar uma query composta que une cada cláusula com uma conjunção de OR lógica para que a query selecione os documentos na coleção que correspondem a pelo menos uma condição.

O exemplo a seguir recupera todos os documentos na coleção em que o status é igual a "A" ou qty é menor que ($lt) 30:

A operação usa um predicado de filtro de { $or: [ { status: 'A' }, { qty: { $lt: 30 } } ] }, que corresponde à seguinte instrução SQL:

SELECT * FROM inventory WHERE status = "A" OR qty < 30

Observação

As queries que usam operadores de comparação estão sujeitas a Type Bracketing.

No exemplo a seguir, a query composta seleciona todos os documentos na coleção em que o status é igual a "A" e qty é menor que ($lt) 30 ou item começa com o caractere p:

A operação utiliza um predicado de filtro de:

{
status: 'A',
$or: [
{ qty: { $lt: 30 } }, { item: { $regex: '^p' } }
]
}

que corresponde à seguinte declaração SQL:

SELECT * FROM inventory WHERE status = "A" AND ( qty < 30 OR item LIKE "p%")

Observação

O MongoDB suporta expressões regulares $regex queries para executar combinações de padrões de string.

O exemplo nesta seção utiliza o conjunto de dados de filmes de amostra. Para saber como carregar o conjunto de dados de amostra em sua implantação do MongoDB Atlas, consulte Carregar Dados de Amostra.

Para projetar campos para retornar de uma consulta no MongoDB Atlas, siga estas etapas:

1
  1. Na interface do usuário do Atlas MongoDB, clique em Database na barra lateral.

  2. Para a implantação do banco de dados que contém os dados de amostra, clique em Browse Collections.

  3. No painel de navegação esquerdo, selecione o banco de dados sample_mflix.

  4. Selecione a collection movies.

2

Especifique o documento de filtro de query no campo Filter. Um documento de filtro de query usa operadores de query para especificar as condições de pesquisa.

Copie o seguinte documento de filtro de query para a barra de pesquisa Filter:

{ year: 1924 }
3

Este filtro de query retorna todos os documentos na coleção sample_mflix.movies onde o campo year corresponde a 1924.

Para exemplos de query adicionais, consulte:

Para leituras de conjuntos de réplicas e fragmentos de conjuntos de réplicas, a preocupação de leitura permite que os clientes escolham um nível de isolamento para suas leituras. Para obter mais informações, consulte Ler preocupação.

Ao correr uma operação de localizar com um driver MongoDB ou mongosh, o comando retorna um cursor que gerencia os resultados da query. Os resultados da consulta não retornam como um array de documentos.

Para saber como iterar documentos em um cursor, consulte a documentação do motorista. Se você estiver usando o mongosh, consulte Iterar um cursor no mongosh.

← Inserir métodos