加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL的FULLTEXT实现全文检索得注意什么

发布时间:2023-08-10 14:34:35 所属栏目:MySql教程 来源:
导读:随着互联网的发展,越来越多的的人进入了IT行业,那么MySQL的FULLTEXT实现全文检索需要注意什么呢?你们知道吗?为了让大家更加了解SQL数据库,小编给大家总结了以下内容,一起往下看吧。

对于英文,MySQL的FULL
随着互联网的发展,越来越多的的人进入了IT行业,那么MySQL的FULLTEXT实现全文检索需要注意什么呢?你们知道吗?为了让大家更加了解SQL数据库,小编给大家总结了以下内容,一起往下看吧。
 
对于英文,MySQL的FULLTEXT属性来实现全文检索是相当方便且高效的,但是在使用过程中需要注意一些事项MySQL的FULLTEXT实现全文检索的注意事项你知道多少吗,其实这个东西小编测试过不支持中文了,不过既然用了还是有一些事项要注意了。
 
首先对我们对需要进行检索的字段添加FULLTEXT属性(假设已经建表):
 
alter table table_name add fulltext index(filed_1,filed_2);
 
接下来查询数据:
 
 SELECT * FROM table_name WHERE MATCH (filed_1,filed_2) AGAINST ('keyword');
 
此处涉及到一个很重要的注意事项:
 
MySQL规定全文搜索中被搜索的单词所在的行数大于等于被搜索的所有行数的一半时候,就将被搜索单词作为Common word,即不被显示。(具体条件需要查阅资料确定)
 
因此,假设在测试的时候,表中只有一行数据,所以无论怎么执行上述查询语句,返回的结果总是为空。不必惊慌,多加几条没有待查关键词的数据就会有结果啦~
 
当然,MySQL提供了更加强大的查询结果过滤:
 
 SELECT * FROM table_name WHERE MATCH (filed_1,filed_2) AGAINST (' keyword_1 -keyword_2' IN BOOLEAN MODE);
 
这样,就会返回包含keyword_1的数据,而包含keyword_2的数据就会被过滤掉。
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章