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

permintaan mongodb untuk mencocokkan setiap elemen dalam array doc dengan suatu kondisi

Saya rasa belum ada cara untuk melakukan ini, selain dari iterasi secara manual melalui dokumen Anda dan memeriksa setiap nilai dalam array. Itu akan menjadi sangat lambat karena harus menjalankan JavaScript pada setiap dokumen, dan tidak dapat memanfaatkan indeks apa pun di atas col.values .

Bahkan $dimana Kueri ekspresi JavaScript tampaknya tidak berfungsi di sini karena, mungkin karena kueri berisi panggilan balik dan terlalu rumit:

db.col.find("this.values.every(function(v) { return (v > 1 && v < 5) })")

Sunting: Untuk beberapa kueri, termasuk yang ini, JavaScript $dimana ekspresi membutuhkan pernyataan pengembalian, jadi ini berfungsi dengan baik:

db.col.find("return this.values.every(function(v) { return (v > 1 && v < 5) })")


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara menggunakan $ operator posisional di driver MongoDB C # versi 2

  2. Menautkan kesalahan saat membangun proyek c++ menggunakan mongo-cxx-driver

  3. MongoDb TTL pada dokumen bersarang dimungkinkan?

  4. Mongoose .save() mengembalikan objek kesalahan kosong, tidak disimpan dalam DB

  5. menghitung mongodb di php