Maison > Article > développement back-end > Comment compter efficacement des attributs spécifiques sur plusieurs sites dans MongoDB à l'aide de Go ?
Récupérer la liste des éléments en vérifiant plusieurs valeurs d'attribut dans MongoDB dans Go
Problème :
Étant donné une structure de données JSON avec une liste imbriquée de sites et de leurs attributs, comment récupérer le nombre d'attributs spécifiques (par exemple, les utilisateurs Linux) pour plusieurs sites ? Par exemple, vous souhaitez compter le nombre d'utilisateurs Linux pour les sites avec les identifiants « VID1212 » et « VID4343 ».
Solution :
Pour y parvenir dans MongoDB, vous pouvez utiliser le cadre d'agrégation :
Pour une alternative plus flexible :
Remplacez la dernière étape d'agrégation par :
{ "$group": { "_id": null, "counts": { "$push": { "name": "$_id", "count": "$count" } } } }
Cette alternative regroupe en fonction du nom de l'attribut et pousse le nombre correspondant dans un tableau.
Pour l'implémentation dans Golang à l'aide de mGo (v2), reportez-vous aux instructions sur http:/ /godoc.org/labix.org/v2/mgo#Collection.Pipe.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!