sql >> Databasteknik >  >> NoSQL >> MongoDB

Mongo DB-fel:ogiltig operator:$search vid $textsökning

I mongo 2.6+ $text fungerar enligt följande:

db.collection.insert({desc: "This is a string with text"});
db.collection.insert({desc:"This is a another string with Text"});
db.collection.insert({desc:"This is a another string with ext"});
db.collection.ensureIndex({"desc":"text"});
db.collection.find({
    $text:{
        $search:"text"
    }
}); 

Detta ger utdata som:

{ "_id" : ObjectId("553277a608b85f33165bf3e0"),
 "desc" : "This is a another string with Text" }

{ "_id" : ObjectId("5532779f08b85f33165bf3df"), 
"desc" : "This is a string with text" }

Om du använder mongo version 2.4, använd följande:

 db.collection.ensureIndex({"desc":"text"});
 db.collection.runCommand( "desc", { search: "Text"})



  1. MongoDB databasstruktur och bästa praxis Hjälp

  2. Summa alla värden för samma namngivna dokumentfält i en samling

  3. Varför svarar MongoDB inte under ett belastningstest?

  4. Uppdatera ett MongoDB-underdokument när det överordnade dokumentet kanske inte finns