MongoDB学习之四----文本索引的简单使用

        为了提高查询的效率,MongoDB也提供了索引(和关系数据库的索引一样,采用B-Tree存储),主要有单个字段索引,组合索引,多键索引(用于数组查询),空间索引,文本索引及哈希索引.

         自从版本2.4以后,MongoDB提供了文本索引,下面来看看如何使用.

         1.启动单个Mongod,注意要设置textSearchEnabled的值

            mongod --dbpath dbText --port 28017 --setParameter textSearchEnabled=true

         2.连接Mongod:mongo localhost:28017

         3.向数据库中插入几条记录:

             use test

            A.  db.tb.insert({"name":"wz","engName":"ryan","age":29})

            B. db.tb.insert({"name":"xw","engName":"ryans","age":29})

            C. db.tb.insert({"name":"wxc","engName":"baby","age":2})

            D. db.tb.insert({"name":"ryan","engName":"wz","age":29})

            E. db.tb.insert({"name":"bu","engName":"bill","age":"ryan"})


            在name和engName两个字段上构建文本索引:

           db.tb.ensureIndex({"name":"text","engName":"text"})

           然后搜索"ryan",db.tb.runCommand("text",{search:"ryan"}),查询到A B D 3条记录

          删除上述索引,db.dropIndex("name_text_engName_text"),

          给所有字段创建文本索引,db.ensureIndex({"$**":"text"}),重新执行上述搜索,查询到A B D E 4条记录


你可能感兴趣的:(mongodb)