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

MongoDB - Setara dengan LEFT JOIN di mana satu koleksi tidak ada

Nah, hasil edit Anda pada dasarnya memiliki jawabannya. Cukup $match di mana array kosong:

db.getCollection('collA').aggregate([
    { "$lookup": {
      "from": "collB",
      "localField": "_id",
      "foreignField": "_id",
      "as": "collB"
    }},
   { "$match": { "collB.0": { "$exists": false } } }
])

$exists uji pada indeks array 0 adalah cara paling efisien untuk bertanya dalam kueri "apakah ini array dengan item di dalamnya".



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kelompokkan berdasarkan nilai dan kondisi

  2. Subdokumen temukan/perbarui luwak

  3. Bagaimana cara melakukan kueri agregasi Mongo di Spring Data?

  4. Golang mgo mendapatkan benda kosong

  5. Kesalahan kunci duplikat MongoDB E11000