900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > MySQL单表多关键字模糊查询的实现方法【MySQL】

MySQL单表多关键字模糊查询的实现方法【MySQL】

时间:2018-07-28 01:21:56

相关推荐

MySQL单表多关键字模糊查询的实现方法【MySQL】

数据库|mysql教程

关键字,title,标签,记录,项目

数据库-mysql教程

在最近的一个项目需要实现在MySQL单表多关键字模糊查询,但这数个关键字并不一定都存在于某个字段。例如现有table表,其中有title,tag,description三个字段,分别记录一条资料的标题,标签和介绍。然后根据用户输入的查询请求,将输入的字串通过空格分割为多个关键字,再在这三个字段中查询包含这些关键字的记录。

匿名聊天app 源码,ubuntu 64 u盘,手机tomcat中文版下载,python 爬虫 用途,php点击按钮自增栏目,小说 seo排名lzw

可目前遇到的问题是,这些关键字是可能存在于三个字段中的任意一个或者多个,但又要求三个字段必须包含所有的关键词。如果分别对每个字段进行模糊匹配,是没法实现所需的要求,由此想到两种方法:

安卓应用开发程序源码,vscode如何完全删除,ubuntu检查gtest,tomcat黑窗口,sqlite如何导入数据库,爬虫具体可以为我们带来些什么,php 名片二维码,seo成功的案例推广,青云志网站源码,免费网站整站模板下载lzw

在插入记录的同时,将需要进行多字段模糊查询的字段合并成一个字串并加入到一个新的字段中,然后对这个新字段进行模糊查询。 使用全文检索,但是这需要用到中文分词或者将汉字转化为拼音(拆分汉字是不可行的,MySQL默认FT最小字节为4),而且并不利于今后的维护。

在网上爬了两天,对此问题的处理都没有找到满意的解决方法,最后在《MySQL权威指南》中翻到了CONCAT的使用方法,在书中的对CONCAT的描述是:

程序自动化交易 源码,vscode权威指南 下载,ubuntu 抢票,js怎么配置tomcat,爬虫入口,php 销毁类,武汉seo优化推广价格,带数据文章网站模板,html5手机音乐模板lzw

CONCAT(str1,str2,…)

返回值:由全体出入参数合并在一起而得到的字符串。只要输入的参数中有NULL值,就返回NULL。CONCAT允许只有一个输入参数的情况。

因此,MySQL单表多关键字模糊查询可以通过下面这个SQL查询实现

SELECT * FROM `magazine` WHERE CONCAT(`title`,`tag`,`description`) LIKE ‘%关键字%’

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。