9.6. Consultando documentos no MongoDB: Consulta de documentos usando operadores de array

Página 32

O MongoDB é um banco de dados NoSQL que oferece alta performance, alta disponibilidade e fácil escalabilidade. Ele trabalha no conceito de Coleções e Documentos. Consultar documentos em um banco de dados MongoDB envolve o uso de operadores de array e outros operadores de consulta. Nesta seção, vamos explorar como consultar documentos usando operadores de array no MongoDB.

Operadores de Array

Os operadores de array são usados para consultar documentos em um banco de dados MongoDB que contêm um array de elementos. Os operadores de array mais comuns no MongoDB incluem $all, $size, $elemMatch, entre outros.

$all

O operador $all é usado para selecionar todos os documentos em uma coleção onde o valor de um campo é um array que contém todos os elementos especificados. Por exemplo, para encontrar todos os documentos onde o campo "tags" contém todos os elementos "mongodb" e "database", a consulta seria:

db.collection.find({ tags: { $all: ["mongodb", "database"] } })

$size

O operador $size é usado para selecionar documentos em uma coleção onde o campo é um array de um determinado tamanho. Por exemplo, para encontrar todos os documentos onde o campo "tags" é um array com 2 elementos, a consulta seria:

db.collection.find({ tags: { $size: 2 } })

$elemMatch

O operador $elemMatch é usado para selecionar documentos em uma coleção onde pelo menos um elemento no campo do array atende a todas as condições especificadas. Por exemplo, para encontrar todos os documentos onde o campo "results" é um array que contém pelo menos um elemento que é um documento com o campo "product" igual a "xyz" e o campo "score" maior que 8, a consulta seria:

db.collection.find({ results: { $elemMatch: { product: "xyz", score: { $gt: 8 } } } })

Consultando documentos

Para consultar documentos em um banco de dados MongoDB, você usa o método find() ou findOne(). O método find() retorna todos os documentos que correspondem aos critérios de consulta, enquanto o método findOne() retorna apenas o primeiro documento que corresponde aos critérios de consulta.

Por exemplo, para encontrar todos os documentos em uma coleção que têm o campo "status" igual a "A", a consulta seria:

db.collection.find({ status: "A" })

Para encontrar o primeiro documento em uma coleção que tem o campo "status" igual a "A", a consulta seria:

db.collection.findOne({ status: "A" })

Além disso, você pode usar operadores de consulta para especificar condições mais complexas. Por exemplo, para encontrar todos os documentos em uma coleção que têm o campo "status" igual a "A" e o campo "qty" menor que 30, a consulta seria:

db.collection.find({ status: "A", qty: { $lt: 30 } })

Em resumo, a consulta de documentos no MongoDB envolve o uso de operadores de array e outros operadores de consulta para especificar os critérios de seleção. Além disso, você pode usar o método find() ou findOne() para recuperar os documentos que correspondem aos critérios de consulta.

Agora responda o exercício sobre o conteúdo:

Qual dos seguintes operadores de array no MongoDB é usado para selecionar documentos em uma coleção onde o campo é um array de um determinado tamanho?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Próxima página do Ebook Gratuito:

339.7. Consultando documentos no MongoDB: Consulta de documentos usando operadores de elemento

Ganhe seu Certificado deste Curso Gratuitamente! ao baixar o aplicativo Cursa e ler o ebook por lá. Disponível na Google Play ou App Store!

Disponível no Google Play Disponível no App Store

+ de 6,5 milhões
de alunos

Certificado Gratuito e
Válido em todo o Brasil

48 mil exercícios
gratuitos

4,8/5 classificação
nas lojas de apps

Cursos gratuitos em
vídeo, áudio e texto