今天工作时遇到一个功能问题:就是输入关键字搜索的字段不只一个字段,比如 我输入: 超天才 ,需要检索出 包含这个关键字的 name 、 company、job等多个字段。在网上查询了一会就找到了答案。

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

在插入记录的同时,将需要进行多字段模糊查询的字段合并成一个字串并加入到一个新的字段中,然后对这个新字段进行模糊查询。 使用全文检索,但是这需要用到中文分词或者将汉字转化为拼音(拆分汉字是不可行的,MySQL默认FT最小字节为4),而且并不利于今后的维护。 
在网上爬了两天,对此问题的处理都没有找到满意的解决方法,最后在《MySQL权威指南》中翻到了CONCAT的使用方法,在书中的对CONCAT的描述是:

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

因此,MySQL单表多关键字模糊查询可以通过下面这个SQL查询实现 
SELECT * FROM userinfo WHERE CONCAT (company,job) LIKE CONCAT ('%','人','%');

注意第一个CONCAT中的是表的字段,所以就不需要单引号。

MySQL单表多字段模糊查询相关推荐

  1. MySQL单表多字段模糊查询解决方法

    2019独角兽企业重金招聘Python工程师标准>>> 在最近的一个项目需要实现在单表中对多字段进行多个关键字的模糊查询,但这数个关键字并不一定都存在于某个字段 例如现有table表 ...

  2. mysql 关键字模糊查询_MySQL单表多关键字模糊查询的实现方法

    在最近的一个项目需要实现在MySQL单表多关键字模糊查询,但这数个关键字并不一定都存在于某个字段.例如现有table表,其中有title,tag,description三个字段,分别记录一条资料的标题 ...

  3. mysql 单表多字段查询_单表多字段MySQL模糊查询的实现

    MySQL模糊查询是我们经常会遇到的,下面就为您介绍MySQL模糊查询的实现方法,希望对您学习MySQL模糊查询方面能够有所帮助. 在最近的一个项目需要实现在单表中对多字段进行多个关键字的MySQL模 ...

  4. mysql为何500w拆表_【mysql】MySQL 单表500W+数据,查询超时,如何优化呢?

    1.问题描述: MySQL 数据库,单表 `im_data_record`,查询超时(30s) 表结构如下图: 表索引如下图: 查询语句如下: SELECT `record_global_id`, ` ...

  5. mysql的模糊查询在xml_在Mybatis xml使用mysql数据库进行多字段模糊查询(Like)

    在mysql中使用Like进行一些简单轻量级的查询,并不需要考虑太多效率问题. 一.Like单字段查询比较简单. 没有特殊要求的话,直接使用%关键字%就进行左右匹配查询 ..... ... SELEC ...

  6. php模糊查询时多个字段,MySQL多关键字多字段模糊查询

    假设有这样两条数据: (表名为user) 1) username=admin,password=000000 2) username=admin,password=123456 我们要实现的效 假设有 ...

  7. mysql 单表2000多万条数据,模糊查询如何秒回

    mysql 单表数据2000多万,没有分区.没有表.没有分库,表存储的是企业信息,例如:企业名称.经营范围.注册地址等信息.现在需要通过关键词模糊匹配企业名称,搜索出匹配的数据.因为模糊匹配,所以直接 ...

  8. php mysql ajax 单表多字段多关键词查询

    单表多字段查询在一些稍微复杂一点的查询中十分有用.本文主要利用MySQL数据库中的concat函数实现单表多字段多关键词查询.并且显示查询结果的表格可根据所选数据表动态生成. html代码 <! ...

  9. Mysql 单表查询where初识

    Mysql 单表查询where初识 准备数据 -- 创建测试库 -- drop database if exists student_db; create database student_db ch ...

最新文章

  1. k8s启动Pod遇到CrashLoopBackOff的解决方法
  2. 从源码透析gRPC调用原理
  3. 借钱不还,法院可以单方拍卖房产吗?
  4. IDEA 配置Tomcat运行Servlet项目
  5. mysql导出数据dump_MYSQL使用mysqldump导出表的部分数据
  6. 引入css外部样式表的注意事项
  7. AlertDialog Unable to add window token null is
  8. 知乎万赞:熬夜整理出的软件测试面试题大全(2021最新)
  9. python flask http 接口开发
  10. 中国有多少家银行 最全名单统计
  11. 多站点同服务器同IP网站架设(IIS)心得
  12. (纪中)2173. 无根树(tree)【SPFA】
  13. 影响职场升迁的小动作
  14. 关于android 使用audiorecord 录制pcm文件 音频速度变快的问题求教
  15. 恒源云GPU登录Linux实例使用记录
  16. 中国5G毫米波小基站市场行业运行动态与发展趋势预测报告
  17. 揭秘!“真假美猴王事件”其实是如来的一次运维事故
  18. python 64式: 第24式、python项目国际化翻译实战
  19. 一篇搞懂OOA/OOD/OOP的区别
  20. WIN10操作系统解决磁盘文件只读属性问题

热门文章

  1. 【机器学习算法专题(蓄力计划)】五、机器学习中的线性代数的基础操作
  2. 二十七、 爬取Boss直聘的招聘信息
  3. pytorh 激活函数,循环神经网络层,损失函数和优化器
  4. 程序员去创业公司做CTO,需要注意什么?
  5. 浙江大学杭州国际科创中心招聘优秀青年人才(机器学习及大数据)
  6. ACL 2019 | 巧用文本语境信息:基于上下文感知的向量优化
  7. 机器学习理论《统计学习方法》学习笔记:第六章 逻辑斯谛回归与最大熵模型
  8. POJ3348 Cows【凸包+多边形求面积】
  9. css如何调整红心样式_css3实现的红心跳动效果
  10. linux安装autossh详细教程,在Linux下安装autossh的教程