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

Temukan catatan dengan bidang dalam dokumen bersarang ketika bidang induk tidak diketahui

Untuk mencari kunci di dokumen bersarang, Anda perlu mengulangi bidang dokumen secara rekursif, Anda dapat melakukannya di JavaScript dengan bantuan $where metode di MongoDB Kueri di bawah ini akan mencari jika ada nama kunci dalam dokumen dan subdokumennya.

Saya telah memeriksa ini dengan contoh yang Anda berikan, dan itu berfungsi dengan baik.

db.getCollection('test').find({ $where: function () {
    var search_key = "lev3_field2";

    function check_key(document) {
      return Object.keys(document).some(function(key) {
        if ( typeof(document[key]) == "object" ) {
            if ( key == search_key ) {
                return true;
            } else {
                return check_key(document[key]);
            }
        } else {
          return ( key == search_key );
        }
      });
    }
    return check_key(this);
  }}

);


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kunci Objek MongoDB dengan string templat ES6

  2. Enkripsi bidang kata sandi di mongodb

  3. MongoDB - Impor Data

  4. Mengekspor modul database luwak

  5. Bagaimana cara menghitung bidang rata-rata per hari menggunakan MongoDB?