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

 

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 以树状结构输出计算机某个指定文件夹下的所有的文件和子文件夹名称

    以树状结构输出计算机某个指定文件夹下的所有的文件和子文件夹名称

    2021年7月17日
    67
  • 总结:程序员的三大出路怎么写_程序员年龄大了的出路

    总结:程序员的三大出路怎么写_程序员年龄大了的出路自己也是一个程序员,整天coding,debugging,有时候也在想,真的有一天写不动了,或者公司更倾向于用年轻人做这些事,因为便宜而且有精力,那我怎么办?虽然国外也有很多老程序员,像我认识的几个德国同事,年纪一大把了,还是个软件工程师,干得还有滋有味。他们不在乎名也不在乎利,全在兴趣。可我不一样啊!国内和国外的环境也不同。时常到网上了解一些程序员的出路问题,总结起来觉得下面三条比较可行。

    2022年10月10日
    0
  • java 程序中的指令重排是什么_指令和程序的区别和联系

    java 程序中的指令重排是什么_指令和程序的区别和联系Java中有两个编译期:1、编译期:调用javac命令将Java代码编译成Java字节码;2、运行期:JIT编译器将字节码编译成机器码。指令重排指令重排是指在程序执行过程中,为了性能考虑,编译器和CPU可能会对指令重新排序。…

    2022年10月17日
    1
  • 机器学习中正则化项L1和L2的直观理解

    机器学习中正则化项L1和L2的直观理解正则化(Regularization)机器学习中几乎都可以看到损失函数后面会添加一个额外项,常用的额外项一般有两种,一般英文称作ℓ1ℓ1\ell_1-norm和ℓ2ℓ2\ell_2-norm,中文称作L1正则化和L2正则化,或者L1范数和L2范数。L1正则化和L2正则化可以看做是损失函数的惩罚项。所谓『惩罚』是指对损失函数中的某些参数做一些限制。对于线性回归模型,使用L1正则化的模型建叫做…

    2022年7月13日
    18
  • noip2012质因数分解_90分解质因数是多少

    noip2012质因数分解_90分解质因数是多少已知正整数n是两个不同的质数的乘积,试求出两者中较大的那个质数。输入格式一个正整数n。输出格式一个正整数p,即较大的那个质数。n≤2×10的9次方这道题可以暴力枚举,但时间复杂度是O(2n),但我们可以用O(n),的时间复杂的做出来,代码如下:`#include#include<iostream>usingnamespacestd;intmain(…

    2022年8月22日
    3
  • 如何挖矿ETH_以太坊个人挖矿

    如何挖矿ETH_以太坊个人挖矿原文链接:https://zhuanlan.zhihu.com/p/32830672官方钱包以太坊的官方网站是:EthereumProject在网站页面的中间部分,提供了官方钱包的下载链接,网站会自动检测你的操作系统,并提供对应系统下钱包软件的下载链接。不过,官方钱包需要同步区块,既浪费时间,又占用硬盘空间。同时,官方钱包提供了大量其他的功能,比如智能合约。如果只是挖矿的话,这些多余的功能反倒增…

    2022年10月15日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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