1
J'ai une base de données, qui est construit commeMongoDB + fusion dictionnaires
{"id":5,
"type":{"hello":1,"sad":2,"luck":1}})
Maintenant, je fais la recherche
db.collection.distinct("type")
[
{
"hello" : 1,
"sad" : 2
},
{
"hello" : 1,
"sad" : 2,
"luck" : 1
}
]
Maintenant, je veux résumer toutes les valeurs pour chaque touche à un tel résultat :
{ "hello" : 2, "sad" : 4, "luck" : 1 }}
Existe-t-il une méthode pour y parvenir, merci d'avance.
Vous devez changer votre structure '{ "id": 5, "type": [{ "k": "bonjour" , "v": 1}, {"k": "chance", "v": 1}, {"k": "triste", "v": 2}]} 'avec paire de valeurs clés. Vous pouvez alors utiliser 'db.collection.aggregate ({" $ unwind ":" $ type "}, {$ groupe: {" _ id ":" $ type.k "," count ": {" $ sum ":" $ type.v "}}})' – Veeram
Merci, monsieur, est-il possible de faire la recherche basée sur la structure de données actuelle? –