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

Bagaimana cara membuat kueri dalam struktur dokumen bersarang (MongoDB) ini?

Saya telah menjawab ini beberapa kali tentang mengambil sub-dokumen sendirian dari koleksi mongo di sini , dan di sini

Hanya tidak ada cara untuk melakukan ini saat ini. Ini adalah perilaku memfilter dokumen tertanam multi level, biasanya filter yang cocok akan mengembalikan seluruh dokumen, bukan subset.

Ada dua masalah luar biasa yang sudah ada di mongo terkait dengan operator posisional ($) ini di bidang untuk mengembalikan specifier dan Kemampuan untuk menggunakan data subdokumen yang isinya digunakan untuk memenuhi kueri menggunakan operator $ . (Silakan masuk untuk memilih jika Anda benar-benar membutuhkan fitur tersebut)

Dan skema alternatif Anda juga tidak berguna di sini.

jadi Anda harus menyimpan setiap fitur dalam dokumen terpisah seperti ini agar berfungsi seperti yang Anda inginkan

fitur 1

{
'_id': SomeObjectId,
'name' :'some name',
'value': 'feature 1',
'some_field' : 'zzz'
}

fitur 2

{
'_id': SomeObjectId,
'name' :'some name',
'value': 'feature 2',
'some_field' : 'zzz'
}

dan bertanya

db.features.find({'_id':someobjectid})

hanya akan mengembalikan fitur tertentu




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara menggabungkan data dari dua koleksi di MongoDB

  2. bagaimana saya bisa memvalidasi kata sandi nama pengguna untuk otentikasi mongodb melalui pymongo?

  3. Hubungan indeks/RAM MongoDB

  4. Bagaimana cara menyimpan 1 juta catatan ke mongodb secara tidak sinkron?

  5. Apakah mungkin untuk mengulangi kursor mongo dua kali?