• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >MongoDB > MongoDB学习之Text Search文本搜索功能

MongoDB学习之Text Search文本搜索功能

作者:无风听海 字体:[增加 减小] 来源:互联网 时间:2017-05-11

无风听海通过本文主要向大家介绍了MongoDB学习之Text Search文本搜索功能等相关知识,希望本文的分享对您有所帮助

前言

MongoDB支持对文本内容执行文本搜索操作,其提供了索引text index和查询操作$text来完成文本搜索功能。下面我们通过一个简单的例子来体验一下MongoDB提供的全文检索功能。

方法示例

1.新建blogs collection,并插入如下的document。

db.blogs.insert({_id:1,title:"MongoDB text search",content:"this is a simple MongoDB text search introduction"})

db.blogs.insert({_id:2,title:"MongoDB text index",content:"this is ae MongoDB text index introduction"})

db.blogs.insert({_id:3,title:"MongoDB text operators",content:"this is ae MongoDB text query introduction"})
</div>

 

2.创建Text Index。

只有拥有text index的collection才支持全文检索;

每个collection只能拥有一个text index;

Text index可以包含任何的string类型、string数组类型的字段;

Text index可以包含多个字段;

执行如下新建text index的语句

db.blogs.ensureIndex({title:"text",content:"text"})
</div>

 

3.执行简单的全文检索

db.blogs.find({$text:{$search:"index"}})
</div>

 

4.查询包含index或者operators的记录

db.blogs.find({$text:{$search:"index operators"}})
</div>

 

5.查询包含mongodb但是不包含search的记录

db.blogs.find({$text:{$search:"mongodb -search"}})
</div>

 

6.查询包含text search词组的记录

db.blogs.find({$text:{$search:"\"text search\""}})
</div>

 

7.使用权重排序搜索结果

默认情况下全文检索返回的结果是无序的;

每次全文检索MongoDB会针对文档的匹配程度为每个document计算一个相对的分数;

MongoDB提供了$meta textScore来支持全文检索的分数;

db.blogs.find( {$text:{$search:"mongodb index"}}, {score:{$meta:"textScore"}} ).sort({score:{$meta:"textScore"}}) 
</div>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 2017-05-11MongoDB教程之查询操作实例
  • 2017-05-11MongoDB插入数据的3种方法
  • 2017-05-11MongoDB快速入门笔记(六)之MongoDB的文档修改操作
  • 2017-05-11MongoDB数据库查询性能提高40倍的经历分享
  • 2017-05-11Mongodb增加、移除Shard Server实例
  • 2017-05-11CentOS 6.5系统中使用yum安装MongoDB 2.6 教程
  • 2017-05-11MongoDB 常用命令总结
  • 2017-05-11NoSQL反模式 - 文档数据库篇
  • 2017-05-11MongoDB使用小结:一些不常见的经验分享
  • 2017-05-11高效mongodb的php分页类(不使用skip)

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • MongoDB修改、删除文档的域属性实例
    • MongoDB系列教程(八):GridFS存储详解
    • MongoDB数据库查询性能提高40倍的经历分享
    • Windows系统下安装Mongodb 3.2.x的步骤详解
    • 记一次MongoDB性能问题(从MySQL迁移到MongoDB)
    • MongoDB性能优化及监控
    • MongoDB在不同主机间复制数据库和集合的教程
    • MongoDB系列教程(六):java操作mongodb实例
    • CentOS 安装 Mogodb的步骤(在线&&离线两种)
    • CentOS系统下MongoDB安装及配置教程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有