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

cara menanyakan objek anak di mongodb

Jika benar-benar null (sebagai lawan dari tidak disetel):

db.states.find({"cities.name": null})

(tetapi seperti yang ditunjukkan javierfp, itu juga cocok dengan dokumen yang tidak memiliki array kota sama sekali, saya berasumsi bahwa mereka melakukannya).

Jika properti tidak disetel:

db.states.find({"cities.name": {"$exists": false}})

Saya telah menguji di atas dengan koleksi yang dibuat dengan dua sisipan ini:

db.states.insert({"cities": [{name: "New York"}, {name: null}]})
db.states.insert({"cities": [{name: "Austin"}, {color: "blue"}]})

Kueri pertama menemukan status pertama, kueri kedua menemukan yang kedua. Jika Anda ingin menemukan keduanya dengan satu kueri, Anda dapat membuat $or permintaan:

db.states.find({"$or": [
  {"cities.name": null}, 
  {"cities.name": {"$exists": false}}
]})


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Permintaan untuk bidang dalam objek dalam array dengan Mongo?

  2. mendapatkan atribut skema dari Model Mongoose

  3. Temukan total waktu yang dihabiskan oleh pengguna di mongoDB

  4. Menanyakan dengan luwak dan kurma

  5. MongoDB - Argumen ke $size harus berupa Array, tetapi bertipe:EOO / hilang