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

Meminta daftar di mongoengine; berisi vs di

Kueri string biasanya di bawah penutup adalah semua kueri regex sehingga akan kurang efisien. Namun, pengecualiannya adalah saat pengujian terhadap bidang referensi! Pertanyaan berikut adalah:

Model.objects.filter(refs__contains="5305c92956c02c3f391fcaba")._query
{'refs': ObjectId('5305c92956c02c3f391fcaba')}

Yang merupakan pencarian langsung.

Model.objects.filter(refs__in=["5305c92956c02c3f391fcaba"])._query
{'refs': {'$in': [ObjectId('5305c92956c02c3f391fcaba')]}}

Ini mungkin kurang efisien, tetapi mungkin akan sangat marjinal. Dampak terbesarnya adalah jumlah dokumen dan apakah refs . atau tidak bidang memiliki indeks.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Pembaruan Perubahan Lisensi SSL MongoDB

  2. Temukan dokumen dengan larik yang tidak berisi nilai tertentu

  3. Bagaimana cara terhubung dengan mongodb menggunakan sailsjs v0.10?

  4. Masalah koneksi MongoDB di Azure

  5. Lakukan penyatuan di mongoDB