Comment effectuez-vous une jointure sur MongoDB

Comment effectuez-vous une jointure sur MongoDB

MongoDB est un type de base de données NOSQL et il est prévu que ces bases de données ne suivent pas les SGBDR (systèmes de gestion de données relationnels) et ne fournissent donc pas de méthodes de jointure approfondies. Cependant, le concept de jointure de MongoDB est inspiré par les bases de données SQL, car initialement, MongoDB lui-même n'a fourni aucune méthode d'adhésion. Vous pouvez rejoindre deux collections dans MongoDB avec l'aide de l'opérateur de recherche de $ d'agrégation.

Une seule collecte peut ne pas décrire les données stockées à l'intérieur; Une collection peut contenir de tels champs qui doivent être liés au champ d'une autre collection pour décrire ce champ. Pour cela, vous pouvez utiliser l'opérateur de recherche $ de la méthode d'agrégation. Cependant, après l'introduction du $chercher Opérateur, les utilisateurs peuvent apprécier l'accès à MongoDB.

Dans cet article, nous avons brièvement expliqué l'utilisation de l'opérateur de recherche $, et quelques exemples sont présentés qui montrent le mécanisme de jonction de MongoDB.

Comment se joindre à MongoDB

Cette section fournit le mécanisme de travail de base de l'opérateur de recherche $, qui est utilisé dans la méthode d'agrégation pour effectuer la jointure de MongoDB. La syntaxe est fournie ci-dessous:

Syntaxe

> db.nom de collection.agrégat([

$ Lookup:

depuis: ,
Localfield:
Foreignfield:
,
AS: "champ de table"


])

Les termes utilisés dans la syntaxe sont expliqués ici:

- nom de collection: Le nom de la collection sur lequel vous êtes présent ou l'opérateur de recherche $ est appliqué

- depuis La collection, vous visez à rejoindre

- Localfield: Cela représente le champ d'un document dans une collection actuelle qui sera utilisé pour correspondre à d'autres collections

- Champ étranger: Le champ de la collection (à joindre) qui peut représenter l'ensemble du document. (identifiant unique)

- comme: Cela contient un champ de tableau qui est créé après avoir rejoint

La section à venir montrera de rejoindre deux collections dans une base de données MongoDB.

Conditions préalables

Comme mentionné précédemment, avec l'aide de l'opérateur de recherche $, vous pouvez faire correspondre deux collections d'une base de données. Donc, pour effectuer cette opération, vous devez avoir besoin de deux collections à partir d'une base de données.

Dans cet article, nous avons utilisé «personnel" et "Info«En tant que collection d'un«linuxhint" base de données. Soyez prudent lors de la sélection d'une collection, car vous ne pouvez rejoindre que deux collections qui résident dans le même base de données.

Le "personnel»La collection contient les documents suivants à l'intérieur: la commande mentionnée ci-dessous est utilisée pour récupérer les documents d'un«personnel" collection.

> db.personnel.trouver().joli()

Et le contenu de la deuxième collection "Info”S'affiche en émettant la commande suivante:

> db.Info.trouver().joli()

Comment rejoindre deux collections à MongoDB

Dans cette section, vous apprendrez à effectuer une jointure à MongoDB. Pour cela, nous avons effectué l'action pour rejoindre le «personnel”Collection avec le«Info" collection.

Dans la commande mentionnée ci-dessous, la méthode agrégée exerce l'opérateur de recherche $ pour obtenir les informations des deux collections et les rejoindra en fonction de la condition suivante:

Si la "champ local" de "personnel»La collection correspond au«champ de champ étranger" de "Info" collection.

> db.personnel.agrégat([

$ Lookup:

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


])

La jonction peut être vue dans la section de sortie de l'image ci-dessous. Nous avons utilisé l'étiquette suivante pour fournir une meilleure compréhension.

Le "Saisir" et "sortir»Les étiquettes montrent respectivement la commande insérée et son résultat. Les données des deux collections après le joint sont également étiquetées et un champ de tableau «Staff_info»Contient les données de«Info”Collection après avoir rejoint.

Conclusion

MongoDB est bien connu en raison de la prise en charge approfondie du traitement des données dans une base de données. Cependant, il ne prend en charge aucune méthode dédiée pour rejoindre des collections comme dans les bases de données basées sur SQL. Alternative à rejoindre, MongoDB prend en charge un opérateur de recherche $ qui peut être utilisé dans la méthode d'agrégation pour effectuer la jointure gauche. Dans ce tutoriel de la série MongoDB, nous avons expliqué le phénomène de travail de l'opérateur de recherche $ dans la méthode d'agrégation. En suivant ce guide, un passionné de Mongo pourrait rejoindre une collection avec une autre…