全文搜索 Contains 与like 的区别
全文搜索:是指计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。这个过程类似于通过字典中的检索字表查字的过程。全文搜索搜索引擎数据库中的数据。
比如,我们查找“我们is中国人 而自豪”为例。
若context类型的全文索引选择使用Chinese_vgram_lexer中文分词器,则“我们is中国人 而自豪”这句话就会切分成以下几个token_text:
我们、们、is、中国、国人、人而、而自、自豪、豪。(Chinese_vgram_lexer中文分词器以标点符号、英文字母(空格不是)等为分句的标记,又将分句以两个字为单位进行分割,分句的最后一个字单独为一个token_text)
Contains : 建立于全文搜索;
like : like 则不会像全文搜索那样使用分割器分割查询。 只能进行匹配查询;
比如,“select * from 表名 where 字段名 like '%中国%' ” 能够查出例句;然而 select * from 表名 where 字段名 like '中%' 就查不出例句。