sql >> Databasteknik >  >> NoSQL >> MongoDB

MongoDB $addFields och $in sammanlagt

Du kan använda $mergeObjects för att kombinera befintlig tweet med is_liked och använd sedan $project för att utesluta likedBy array från slutresultatet, prova:

db.gamers.aggregate([
    {
        $project: {
            tweets: {
                $map: {
                    input: "$tweets",
                    as: "tweet",
                    in: {
                        $mergeObjects: [
                            "$$tweet",
                            { is_liked: { $in: [ "some-random-dude", { $ifNull: [ "$$tweet.likedBy", [] ] } ] } }
                        ]                            
                    }
                }
            }
        } 
    },
    {
        $project: {
            "tweets.likedBy": 0
        }
    }
])



  1. Redis Key upphör med Jedis

  2. Hur man implementerar en distribuerad transaktion över Mysql, Redis och Mongo

  3. NodeJS och MongoDB applikationsautentisering av JWT

  4. Hur man kontrollerar om samlingen finns eller inte MongoDB Golang