设为首页 加入收藏

TOP

关于SQL/NoSQL数据库搜索/查询的思考(二)
2015-11-21 02:07:15 来源: 作者: 【 】 浏览:2
Tags:关于 SQL/NoSQL 数据库 搜索 查询 思考
.) AGAINST (expr[search_modifier])

search_modifier: { IN BOOLEAN MODE | WITHQUERY EXPANSION }

例如:SELECT * FROM tab_name WHERE MATCH (col1,col2) AGAINST(search_word);

这里的table需要是MyISAM类型的表,col1、col2需要是char、varchar或text类型,在查询之前需要在col1和col2上建立一个全文索引。

下面有一段话需要注意:

MySQL在高并发连接、数据库记录数较多的情况下,SELECT... WHERE ... LIKE '%...%'的全文搜索方式不仅效率差,而且以通配符%和_开头作查询时,使用不到索引,需要全表扫描,对数据库的压力也很大。MySQL针对这一问题提供了一种全文索引解决方案,这不仅仅提高了性能和效率(因为MySQL对这些字段做了索引来优化搜索),而且实现了更高质量的搜索。但是,至今为止,MySQL对中文全文索引无法正确支持。

--- 这个问题可以通过使用一些MYSQL中文全文检索插件来解决。

关于Oracle中的全文检索可以参考这篇文章:http://www.iteye.com/topic/1118055。

本文属于个人见解,如有疑问或者指正,欢迎讨论,谢谢!

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇SQL语言――高级方法 下一篇SQL更新时间字段的年份

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: