MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Agregasi MongoDB dengan $lookup hanya menyertakan (atau memproyeksikan) beberapa bidang untuk dikembalikan dari kueri

Hanya untuk membantu orang lain dengan ini, @SiddhartAjmera memiliki jawaban yang benar, saya hanya perlu menambahkan tanda kutip ganda untuk nilai bersarang seperti "campaign.clientid".

Kode terakhir harus:

db.somecollection.aggregate([
      {
        "$lookup": {
          "from": "campaigns",
          "localField": "campId",
          "foreignField": "_id",
          "as": "campaign"
        }
      },
      {
        "$unwind": "$campaign"
      },
      {
        "$lookup": {
          "from": "entities",
          "localField": "campaign.clientid",
          "foreignField": "_id",
          "as": "campaign.client"
        }
      },
      {
        "$project": {
          "_id": 1,
          "campId": 1,
          "articleId": 1,
          "campaign._id": 1,
          "campaign.clientid": 1,
          "campaign.client._id": 1,
          "campaign.client.username": 1
        }
      }
]);


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. 5 Cara Mendapatkan Detik dari Kencan di MongoDB

  2. Bagaimana saya bisa mengurutkan nol yang terakhir dipesan di mongodb?

  3. Menjalankan MongoDB dengan Manajer Operasi

  4. Bagaimana cara membuat dump MongoDB dari database saya?

  5. Bagaimana cara memeriksa apakah indeks sedang digunakan?