sql >> Database >  >> NoSQL >> MongoDB

Mongodb recursieve zoekopdracht

U kunt onderstaande aggregatie proberen.

Stadia $match - $graphLookup - $project .

$reduce om het eerste element te kiezen uit elk van $graphLookup nameList's na array.

db.taxon.aggregate([{
    $match: {
        _id: {
            $in: listId
        }
    }
}, {
    $graphLookup: {
        from: "taxon",
        startWith: "$_id",
        connectFromField: "pa",
        connectToField: "_id",
        as: "nameList"
    }
}, {
    $project: {
        nameList: {
            $reduce: {
                input: "$nameList",
                initialValue: [],
                in: {
                    "$concatArrays": ["$$value", {
                        $slice: ["$$this.na", 1]
                    }]
                }
            }
        }
    }
}])



  1. nginx uwsgi websockets 502 Slechte gateway upstream voortijdig gesloten verbinding tijdens het lezen van responsheader van upstream

  2. Bevestigingsfout:1 ==0 voor MongoDB deleteOne Command

  3. Wat betekent de documentatie van MongoDB als staat dat ObjectID's waarschijnlijk uniek zijn?

  4. Mongoose dubbele sleutelfout met upsert