Neste artigo, forneceremos um guia detalhado para usar $ in e $ nin Operadores em MongoDB:
Recomenda -se concluir os seguintes itens da lista de pré -requisitos para prosseguir para a aplicação desses operadores.
Pré -requisitos
Esta seção contém um conjunto de componentes do MongoDB que são necessários para serem adotados para seguir este guia:
Nesta postagem, usaremos o seguinte banco de dados e uma coleção para aplicar $ in e $ NIN Operadores:
Nome do banco de dados: Linuxhint
Nome da coleção: Debian
Você também deve inserir alguns documentos em uma coleção.
Como usar $ in e $ Nin Operadores em MongoDB
Este artigo é dividido em duas partes; um refere -se ao $ no operador e o outro demonstra o uso do operador $ nin.
Em primeiro lugar, verificaremos os documentos disponíveis em nossa coleção (para que possamos executar ações de acordo).
Conecte -se ao seu MongoDB emitindo o seguinte comando no terminal Ubuntu: percebe -se que este comando se conectará automaticamente Mongo Shell também.
$ sudo mongo linuxhint
Depois disso, você pode obter a exibição de todos os documentos disponíveis em sua coleção: por exemplo, o comando a seguir ajudará a recuperar documentos disponíveis no “Debian" coleção:
> dB.Debian.encontrar().bonito()Como usar $ no operador em MongoDB
O $ in O operador procurará a matriz e mostrará o documento que corresponde ao valor: a sintaxe de $ in está escrito abaixo:
"campo": $ in: ["value1", "value2",…]Você deve especificar o nome do campo e os valores que deseja procurar:
Exemplo 1: Usando $ in para corresponder a um valor
O $ no operador pode ser usado para corresponder a um valor em um campo e imprimirá os documentos que correspondem a esse valor. Por exemplo, o comando a seguir exibirá todos os documentos que "num“(Campo) é igual ao valor“20“: Como apenas um documento contém valor“20“; Assim, apenas esse é impresso:
> dB.Debian.encontre (num: $ in: [20]).bonito()Exemplo 2: Usando $ in para corresponder a um (s) valor (s) da matriz
Além disso, você também pode usar o $ no operador para procurar valores de matriz no banco de dados MongoDB. No nosso caso, o comando mencionado abaixo exibirá os documentos que têm valores “Mike" e "Jack" em "Autores ” campo:
> dB.Debian.encontre (autores: $ in: ["Mike", "Jack"]).bonito()
Exemplo 3: Usando $ in para combinar com expressões regulares
O $ em operador também pode ser usado para corresponder aos valores especificados por uma expressão regular: o comando mencionado abaixo exibirá documentos que contêm um campo “Tipo”E as cordas no campo começam com“ab" ou "cd“:
> dB.Debian.encontre (type: $ in: [/^ab/,/^cd/]).bonito()Como usar o $ NIN Operador em MongoDB
O operador de $ nin em MongoDB atua oposto a $ in; Como $ Nin, exibirá o documento que não contém o valor especificado. A sintaxe é semelhante de $ in e é mostrada abaixo:
"arquivado": $ nin: ["value1", "value2"…]Exemplo 1: Usando $ nin para corresponder a um valor
Como já mencionado, esse operador $ NIN não exibe o documento que corresponde a um valor. O comando abaixo exibirá os documentos que não contêm “20" em "num" campo:
A saída abaixo mostra que os documentos impressos não contêm valor “20“:
> dB.Debian.encontre (num: $ nin: [20]).bonito()Exemplo 2: Usando $ nin para corresponder a um valor de matriz
O comando a seguir exibirá os documentos que não contêm “Mike" e "John" no "Autores" campo. Como nenhum documento é deixado para trás porque todos os documentos têm “Mike" ou "John“Como autor, haverá uma saída vazia:
> dB.Debian.encontre (autores: $ nin: ["Mike", "John"]).bonito()Exemplo 3: Usando $ nin para combinar com uma expressão regular
O operador $ NIN também é usado para obter os documentos com base em expressões regulares; Por exemplo, no comando abaixo mencionado, “Tipo”O campo está selecionado e $ Nin imprimirá os documentos em que“Tipo”O valor não começa com“ab" ou "cd“:
> dB.Debian.encontre (type: $ nin: [/^ab/,/^cd/]).bonito()Observação: O "bonito()”O método usado neste artigo é apenas para obter a saída de forma estruturada; você pode usar apenas “encontrar()”Para obter o mesmo resultado, mas de uma maneira não estruturada.
Conclusão
Gerenciamento de dados adequado é a principal preocupação de qualquer organização. Eles precisam armazenar dados e a rápida recuperação de dados é preferida sempre que necessário. Vários sistemas de gerenciamento de banco de dados fornecem essa funcionalidade e o MongoDB é um deles. Neste post, descrevemos o uso de dois operadores “$ in" e "$ nin”Isso ajuda a recuperar valores de matriz em um banco de dados MongoDB. Esses operadores ajudam a obter os documentos necessários com base nos valores combinados por esses operadores. O $ no operador imprime o documento que contém a correspondência; enquanto $ nin imprime os documentos que não correspondem ao valor.