数据库 弱弱的问一下全文检索和 SQL 的搜索有什么区别

inetufo · 2012年04月28日 · 最后由 zhangyuan 回复于 2012年04月28日 · 5699 次阅读

用 sphinx lucene solr 和用 searchlogic metasearch 有什么不同?一直对这两个概念比较模糊?全文检索用哪个比较好呢?

前者是一门专有的技术用于解决在文本里面搜索内容 后者只是 SQL 里面的条件查询而已

所以当然是专业的技术好!

很重要的一点是在搜索文本大字段时,用 sql like %% 就比较炯了,如果你的需求是简单的搜索匹配的话,也没有必要使用全文搜索了。

#2 楼 @qichunren 我就是说 sql like %%可以做为什么还要用全文,是因为用 SQL like 搜索大文本效率很低?

效率低是一方面,还有就是分词技术。

sql like 问题:

  1. 效率低
  2. 无法匹配混合顺序的内容,比如"Ruby 社区 的 技术", SQL 无法搜索任意顺序的排列,而专业的搜索引擎可以实现;
  3. 无法根据内容匹配度排序

我是不是可以理解:

  1. SQL 搜索:直接匹配,扫编所有内容来匹配。或者提前做简单的索引,比如 Btree
  2. 全文检索:提前做好分词和索引,根据词语的索引查的
需要 登录 后方可回复, 如果你还没有账号请 注册新账号