Como você realiza uma junção no MongoDB

Como você realiza uma junção no MongoDB

O MongoDB é um banco de dados NoSQL e é previsto que esses bancos de dados não sigam RDBMS (Sistemas de Gerenciamento de Banco de Dados Relacional) e, portanto, não fornecem métodos de junção extensos. No entanto, o conceito de junção de MongoDB é inspirado nos bancos de dados SQL, porque inicialmente, o próprio MongoDB não forneceu nenhum método de união. Você pode participar de duas coleções em MongoDB com a ajuda do operador de pesquisa $.

Uma única coleção pode não descrever os dados armazenados dentro dele; Uma coleção pode conter esses campos que devem estar ligados ao campo de outra coleção para descrever esse campo. Para isso, você pode usar o operador de pesquisa $ do método de agregação. No entanto, após a introdução do $olho para cima Operador, os usuários podem gostar de ingressar no acesso em MongoDB.

Neste artigo, explicamos brevemente o uso do operador de pesquisa $, e alguns exemplos são apresentados que mostram o mecanismo de união do MongoDBB.

Como a participação funciona em MongoDB

Esta seção fornece o mecanismo de trabalho básico do operador de pesquisa $, usado no método de agregação para executar a junção no MongoDBB. A sintaxe é fornecida abaixo:

Sintaxe

> dB.Nome da coleção.agregar([

$ Lookup:

de: ,
Localfield:
FLEILFIED:
,
AS: "Campo de Array"


]))

Os termos usados ​​na sintaxe são explicados aqui:

- Nome da coleção: O nome da coleção no qual você está presente ou o operador de pesquisa $ é aplicado

- de A coleção, você está direcionando para se juntar

- Localfield: Isso representa o campo de um documento em uma coleção atual que será usada para combinar com outras coleções

- Campo estrangeiro: O campo da coleção (a ser unido) que pode representar todo o documento. (ID único)

- como: Isso contém um campo de matriz criado após ingressar

A próxima seção demonstrará unindo duas coleções em um banco de dados MongoDB.

Pré -requisitos

Como mencionado anteriormente, com a ajuda do operador de pesquisa $, você pode combinar duas coleções de um banco de dados. Portanto, para executar esta operação, você deve precisar de duas coleções de um banco de dados.

Neste post, usamos “funcionários" e "informações”Como uma coleção de um“Linuxhint" base de dados. Tenha cuidado ao selecionar uma coleção, porque você só pode participar de duas coleções que residem no mesmo base de dados.

O "funcionários”A coleção contém os seguintes documentos dentro dele: o comando mencionado abaixo é usado para recuperar documentos de um“funcionários" coleção.

> dB.funcionários.encontrar().bonito()

E conteúdo da segunda coleção “informações”É exibido emitindo o seguinte comando:

> dB.informações.encontrar().bonito()

Como ingressar em duas coleções em MongoDB

Nesta seção, você aprenderá a realizar uma junção no MongoDBB. Para isso, realizamos a ação para ingressar no “funcionários"Coleção com a"informações" coleção.

No comando abaixo mencionado, o método agregado exerce o operador de pesquisa $ para obter as informações de ambas as coleções e se juntará a elas com base na seguinte condição:

Se o “Localfield" de "funcionários”A coleção corresponde à“Foreignfield" de "informações" coleção.

> dB.funcionários.agregar([

$ Lookup:

De: "Info",
Localfield: "_id",
FLEILFIEL: "_id",
AS: "Staff_info"


]))

A junção pode ser vista na seção de saída da imagem abaixo do pasta. Usamos o seguinte rótulo para fornecer uma melhor compreensão.

O "Entrada" e "saída”Os rótulos mostram o comando inserido e seu resultado, respectivamente. Os dados de ambas as coleções após ingressar também são rotulados e um campo de matriz “Staff_info”Contém os dados de“informações"Coleção depois de ingressar.

Conclusão

MongoDB é bem conhecido devido ao extenso suporte para o processamento de dados dentro de um banco de dados. No entanto, ele não suporta nenhum método dedicado para ingressar em coleções como nos bancos de dados baseados em SQL. Alternativa para ingressar, o MongoDB suporta um operador de pesquisa $ que pode ser usado no método de agregação para executar a junção esquerda. Neste tutorial da série MongoDB, explicamos o fenômeno de trabalho do operador de pesquisa $ no método de agregação. Seguindo este guia, um entusiasta de Mongo seria capaz de ingressar em uma coleção com outra…