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

sortir mongodb dan kueri regex dengan cara yang efisien

Anda dapat mencoba membuat indeks teks di country_lc , region_lc dan city_lc bidang:

db.reviews.ensureIndex( { "country_lc": "text" } )
db.reviews.ensureIndex( { "region_lc": "text" } )
db.reviews.ensureIndex( { "city_lc": "text" } )

Indeks teks adalah fitur baru di MongoDB 2.4. Mereka ditambahkan untuk mendukung pencarian teks konten string dalam dokumen koleksi. Silakan lihat dokumentasi resmi untuk petunjuk performa.

Selain itu, Anda dapat mencoba menulis ulang kueri sebagai

db.location.find(
     { "docType": {"$in": [ "country", "region", "city" ]},
       "$or": [
         { "country_lc": /^unit/ },
         { "region_lc": /^unit/ },
         { "city_lc": /^unit/ },
       ]
    }, 
    { "country": 1, "region": 1, "city": 1, "docType" :1 }
   ).sort({ "country_lc" :1, "region_lc": 1, "city_lc":1 })

(Perhatian :Ini setara atau tidak sama dengan kueri Anda, bergantung pada struktur dokumen.)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. simpan luwak vs sisipkan vs buat

  2. Kendala unik MongoDB/Mongoose pada bidang Tanggal

  3. Bagaimana cara mengakses koleksi yang sudah ada sebelumnya dengan Mongoose?

  4. Variabel Lingkungan Aplikasi Meteor

  5. Bagaimana Mendesain Lingkungan Basis Data Sumber Terbuka yang Sangat Tersedia