mysql全文索引实现搜索功能(关键词查询)

mysql全文索引实现搜索功能(关键词查询)最近在做一个关键词查询功能。所以开始了解mysql的全文索引技术。接下来我将一步一步告诉大家。我是如何一步一步实现关键词检索的。1.了解到mysql全文检索是以词为基础的。MySQL默认的分词是所有非字母和数字的特殊符号都是分词符。所以我存在数据库的样子是这样的。(左边的字段用于显示,右边的字段用于全文查询)2.全文检索的sqlSELECT*FROMtbk_item_coupon…

大家好,又见面了,我是你们的朋友全栈君。

最近在做一个关键词查询功能。所以开始了解mysql的全文索引技术。接下来我将一步一步告诉大家。我是如何一步一步实现关键词检索的。

1.   了解到mysql全文检索是以词为基础的。MySQL默认的分词是所有非字母和数字的特殊符号都是分词符。所以我存在数据库的样子是这样的。(左边的字段用于显示,右边的字段用于全文查询)

mysql全文索引实现搜索功能(关键词查询)

2.全文检索的sql

SELECT * FROM  tbk_item_coupon WHERE MATCH(`title`) AGAINST(‘夏季’ IN BOOLEAN MODE)

更多的检索方式可以上网查找。一大堆。(我们的目的是能实现全文检索)

3.全文检索默认词的长度为4。需要调整。调整操作如下:

 第一步:

全文索引的创建、使用

以下使用 Navicat软件来实现。索引添加。(很多文章都使用语句添加全文索引,可视化工具那么好用,为什么不用。)

创建全文索引,如图、即可。

mysql全文索引实现搜索功能(关键词查询)

第二步:

ft_min_word_len    4    #最短的索引字符串,默认值为4,(通常改为1)

修改后必须重建索引文件 重新建立索引命令:repair table tablename quick,修改操作如下:

(1)进入mysql运行环境

Dos环境下执行mysql -uroot –p  然后输入密码

(2)查看全文索引参数

SHOW VARIABLES  LIKE ‘ft%’;

mysql全文索引实现搜索功能(关键词查询)

(3)找到my.ini (Linux 下是 my.cnf )。我使用的是阿里服务器,路径是在 etc/ 下。直接 vi my.cof 就有了。在mysqld 的最后面加上这句话。重启mysql(执行命令:service mysqld restart 直接重启服务器)。如图。

mysql全文索引实现搜索功能(关键词查询)

(4)修改后结果如图

 mysql全文索引实现搜索功能(关键词查询)

此时即可进行全文检索。

mysql全文索引实现搜索功能(关键词查询)

博主新推出的gitee免费开源项目(生鲜商城+APP+小程序+H5),小伙伴可以了解一下。

生鲜商城kxmall-小程序 + App + 公众号H5: kxmall-生鲜商城+APP+小程序+H5。同时支持微信小程序、H5、安卓App、苹果App。支持集群部署,单机部署。可用于B2C商城,O2O外卖,社区超市,生鲜【带配套骑手端配送系统】。kxmall使用uniapp编码。使用Java开发,SpringBoot 2.1.x框架,MyBatis-plus持久层框架、Redis作为缓存、MySql作为数据库。前端vuejs作为开发语言。mysql全文索引实现搜索功能(关键词查询)https://gitee.com/zhengkaixing/kxmall

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/151891.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • robotium 代码

    robotium 代码Robotium之用例分析    http://blog.csdn.net/wirelessqa/article/details/7847466robotium各种方法:http://wenku.baidu.com/link?url=XoPtudf4lgpyzhbLPGJ-6ie8VM2hcCb4Gl6rHozgOrgxWfK52nj-kHzhFbZDkoc_FASztmmPG

  • pygame安装超详细讲解「建议收藏」

    pygame安装超详细讲解「建议收藏」1.进入python官网:https://www.python.org/2.点击PyPI3.输入框输入pygame4.根据顺序依次点击5.根据自己python版本号选择对应的文件6.把下载的whl文件放在python的对应目录下7.回到上一句目录,按住shift然后鼠标点击右键,打开windowsPowerShell命令窗口输入pygame_2048-1.9.4-py3-none-any.whl(这个是你下载的对应版本名)安装过程中出现了两个问题:1)Youareusin

  • java中scanner的作用_Java中的Scanner类有什么作用[通俗易懂]

    java中scanner的作用_Java中的Scanner类有什么作用[通俗易懂]介绍:简单来说,Scanner就是用来获取用户在控制台输入的字符串,也可以获取一个文件中的字符串。java.util.Scanner是Java5的特征,一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。使用方法介绍:1、使用不同的next方法将得到的标记转换为不同类型的值,比如说要从获控制台取一个输入字符串中的int类型的数字,使用nextInt。代码示例:Scanners…

  • laravel之phpunit单元测试

    laravel之phpunit单元测试laravel之phpunit单元测试

  • Java基础篇:内部类详解

    Java基础篇:内部类详解

  • DrawCall_draw a drawing

    DrawCall_draw a drawing关于unity优化,DrawCall肯定占了比较重要的一部分,下面我们就简单了解一下什么是Drawcall。什么是DrawCall?在电脑运行层面理解:rawcall是CPU对底层图形绘制接口的调用命令GPU执行渲染操作,渲染流程采用流水线实现,CPU和GPU并行工作,它们之间通过命令缓冲区连接,CPU向其中发送渲染命令,GPU接收并执行对应的渲染命令。这里drawcall影响绘制的原因主要是因为每次绘制时,CPU都需要调用drawcall而每个drawcall都需要很多准备工作,检测渲染状态、提交

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号