MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Les tableaux concat utilisant PyMongo ont échoué avec l'opérateur de groupe inconnu '$concatArrays'

La raison pour laquelle vous obtenez ce message d'erreur est que le $concatArrays L'opérateur est un opérateur d'expression pas un accumulateur $group .

Cela étant dit, vous pouvez le faire avec le pipeline suivant :

[
    {
        "$group": {
            "_id": "$word",
            "info": {
                "$push": "$info"
            }
        }
    },
    {
        "$project": {
            "_id": 0,
            "word": "$_id",
            "info": {
                "$reduce": {
                    "input": "$info",
                    "initialValue": [

                    ],
                    "in": {
                        "$concatArrays": [
                            "$$value",
                            "$$this"
                        ]
                    }
                }
            }
        }
    }
]

Nous créons une liste 2d d'infos dans le $group étape avec le $push opérateur puis dans un autre $project étape vous aplatissez la liste en utilisant le $reduce et $concatArrays .