Mongodb $ no operador

Mongodb $ no operador
“Em MongoDB, a compreensão das operações do CRUD é fundamental. Recuperação, inserção, atualização e exclusão de dados são exemplos dessas operações. Para essas tarefas, o MongoDB fornece várias maneiras de. Há uma consulta e um componente de projeção em cada uma dessas abordagens. Uma consulta descreve o método para filtrar o documento. É, em geral, uma coisa. E se, por exemplo, gostaríamos de todos os documentos com vários valores no campo de nome? O $ em operador está disponível em MongoDB em tais casos. Esta postagem continuará sobre como usar o $ no operador.”

O que é $ no operador em MongoDB no Ubuntu 20.04?

O $ em operador é um dos operadores de consulta de comparação incluídos no MongoDBB. O $ no operador é usado para procurar documentos cujo valor de campo corresponda a qualquer um dos valores da matriz. Se o esquema for uma matriz, este operador escolherá apenas documentos com uma matriz com pelo menos um único elemento contendo um valor na matriz definida. Dependendo de nossas necessidades, podemos usar esse operador em procedimentos como find (), atualização (), etc.

Sintaxe de $ em operador em MongoDB no Ubuntu 20.04?

O $ no operador escolhe documentos em que o valor de um campo é igual a qualquer entrada na matriz associada. Use o protótipo abaixo para especificar um $ na expressão:

Field: $ in: [,,…]

Se o campo compreende uma matriz, o $ em operador escolhe documentos com pelo menos um membro igual a um valor na matriz declarada (por exemplo, val1>, val2> e assim por diante). O $ em operação corresponde a cada argumento a todos os documentos da coleção definida, o que pode causar preocupações de desempenho.

  • É melhor manter o número de argumentos fornecidos ao $ no operador para algumas dezenas de números. Usar centenas ou milhares de parâmetros pode influenciar negativamente o desempenho da consulta.
  • Faça um índice para o campo que você gostaria de consultar.

Como usar $ no operador em MongoDB no Ubuntu 20.04?

Para usar $ no operador em MongoDB, devemos seguir o $ em protótipo de operador acima. Temos algumas ilustrações de exemplo de uso do $ no operador em MongoDB de maneiras bastante diferentes. Em primeiro lugar, para acessar o $ no operador, devemos criar o banco de dados em MongoDB. Abra a concha do Ubuntu e digite a palavra -chave "Mongo". Ao fazer isso, entraremos no Mongo Shell. Criamos o banco de dados como "aluno" usando os seguintes comandos.

O banco de dados é criado como "aluno". Agora, criamos uma coleção como "colecionamento de aluno" usando o comando da seguinte maneira:

Para visualizar a coleção, basta inserir o comando "Show Collections". Isso mostrará a coleção que criamos.

Depois de criar as coleções, inserimos os três documentos da coleção "aluno" usando a consulta InsertMany como segue. Observe que, se não definirmos o ID das inserções do documento, por padrão, Mongo definirá o campo de identificação. O diagrama a seguir pode ajudá -lo a entender as coisas melhor.

Nós chamamos a consulta com a função find (). A função find () retorna toda a coleção de documentos.

Exemplo 1: Usando o $ no operador para corresponder aos valores em MongoDB no Ubuntu 20.04

Estamos recuperando os dados apenas daqueles campos de documentos neste exemplo em particular, que é fornecido no $ no operador.

Na consulta MongoDB a seguir, chamamos a função de localização para recuperar o documento de coleção de "StudentCollection". Atribuímos o nome do campo "Student_name" do documento em nossa função de localização. Depois disso, utilizamos o $ no operador e passamos as entidades. Somente os documentos dos alunos chamados "vergonho" ou "maha" estão sendo recuperados. O método pretty () aqui é usado para exibir os dados de um documento de maneira formatada.

Ao inserir a consulta, você pode ver que buscamos os valores correspondentes do documento.

Exemplo 2: Usando o $ no operador para corresponder aos valores dentro da matriz em MongoDB no Ubuntu 20.04

A consulta a seguir seleciona todos os documentos da coleção "StudentCollection", onde o campo de assunto é "ciência" ou "computador". Atribuímos esses nomes de campo do documento no $ no operador e recuperamos os dados do documento correspondidos com o nome do campo especificado, como mostrado na figura abaixo.

Exemplo 3: Usando o $ no operador para corresponder aos valores no documento aninhado em MongoDB no Ubuntu 20.04

Para obter as informações sobre o documento aninhado, precisamos inserir o documento aninhado na coleção especificada. Então, inserimos o documento de campo aninhado do documento existente como "Pessoal_info" na coleção "StudentCollection". Então, temos uma consulta do MongoDB $ no operador. Demos o nome do documento aninhado "Personal_info", juntamente com o nome de campo "Participação" na função Find e dentro do $ no operador, damos o valor de participação "50". Estamos recuperando os dados apenas dos alunos cuja participação é "50". Abaixo, temos a implementação de $ em consulta e os dados do valor correspondente do documento incorporado.

Exemplo 4: Usando o $ em operador para atualizar dados em MongoDB no Ubuntu 20.04

Estamos usando uma consulta de atualização para definir o novo campo "CGPA" no documento em que o campo "Student_name" é "maha" usando o $ em operador. Juntamente com o $ no operador, usamos o operador $ set e definimos o valor de "CGPA" como "3.5 ”. Por padrão, o método update () atualiza apenas um documento no momento. Defina o valor da multi-opção como TRUE, se desejar atualizar vários documentos. Como resultado, o método update () mudou o último documento que correspondia à condição fornecida neste exemplo. A tela de saída mostra os resultados esperados do documento.

Conclusão

O enorme volume de dados coletados hoje em dia exige o desenvolvimento de métodos de consulta de dados aprimorados como este. Esperamos que você tenha encontrado esta visão geral do MongoDB $ no operador informativo. Demos alguns exemplos executando o $ na consulta de operador em MongoDB. Ele é útil sempre que você quiser encontrar qualquer registro em que um dos campos tenha um conjunto específico de valores.