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

Pencarian teks lengkap MongoDB - kata yang cocok dan frasa yang tepat

Apakah Anda mencoba pencarian teks untuk melihat apakah itu tidak berperilaku dengan benar? Ini berfungsi seperti yang diharapkan untuk saya di MongoDB 2.6.7:

> db.test.drop()
> db.test.insert({ "t" : "I'm on time, not late or delayed" })
> db.test.insert({ "t" : "I'm either late or delayed" })
> db.test.insert({ "t" : "Time flies like a banana" })
> db.test.ensureIndex({ "t" : "text" })

> db.test.find({ "$text" : { "$search" : "time late delay" } }, { "_id" : 0 })
{ "t" : "I'm on time, not late or delayed" }
{ "t" : "Time flies like a banana" }
{ "t" : "I'm either late or delayed" }

> db.test.find({ "$text" : { "$search" : "late delay" } }, { "_id" : 0 })
{ "t" : "I'm on time, not late or delayed" }
{ "t" : "I'm either late or delayed" }

> db.test.find({ "$text" : { "$search" : "late delay \"on time\"" } }, { "_id" : 0 })
{ "t" : "I'm on time, not late or delayed" }

Mengapa "waktu" dalam terms array di jelaskan? Karena jika frasa "on time" terjadi dalam dokumen, istilah time juga harus. MongoDB menggunakan indeks teks sejauh dapat membantu menemukan frasa dan kemudian akan memeriksa hasil indeks untuk melihat mana yang benar-benar cocok dengan frasa lengkap dan bukan hanya istilah dalam frasa.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. kueri mongo - apakah ada properti?

  2. Bagaimana menemukan waktu operasi pembaruan/masukkan/hapus terakhir pada koleksi mongodb tanpa bidang objectid

  3. Bagaimana cara terhubung ke MongoDB di Windows?

  4. Metode pencarian luwak dengan $or condition tidak berfungsi dengan baik

  5. Mengonfigurasi oauth2-server-laravel dengan laravel-mongodb