【mysql】关键词搜索实现

devtools/2024/9/23 14:36:28/

关键词搜索实现两种方式

-- 方式1 模糊匹配搜索
-- 场景一:搜索出来地址内包含‘李’和‘中国’的
select * from tn_md_cust_link  where address like concat ('%李%') or address like concat ('%中国%') 
-- 场景二:搜索地址或者名称包含 ‘181’ 的  
select * from tn_md_cust_link  where address like concat ('%181%') or link_person like concat ('%181%') -- 方式2  正则搜索
-- 场景一:搜索出来地址内包含‘李’和‘中国’的
SELECT * FROM tn_md_cust_link WHERE address REGEXP '李|中国';

正则搜索使用参考注意

使用正则表达式进行关键词搜索
假设我们想要查找内容中包含某个关键词或模式的文章。可以使用 REGEXP 或 RLIKE 来实现这一点。

示例 1:查找包含单个关键词的文章
下面的查询将查找内容中包含“SQL”这个词的所有文章:

sql
SELECT * FROM articles WHERE content REGEXP ‘SQL’;
示例 2:查找包含多个关键词的文章
如果我们希望查找内容中包含多个关键词(例如“SQL”和“performance”),可以使用正则表达式的 OR 操作符 |:

sql
SELECT * FROM articles WHERE content REGEXP ‘SQL|performance’;
示例 3:忽略大小写进行关键词搜索
MySQL 的 REGEXP 操作符默认不区分大小写。如果你想要区分大小写,可以使用 REGEXP BINARY:

sql
SELECT * FROM articles WHERE content REGEXP BINARY ‘SQL’;
完整示例
综合以上,假设我们想要查找内容中包含“SQL”或者“advanced”的所有文章:

sql
SELECT * FROM articles WHERE content REGEXP ‘SQL|advanced’;
这个查询会返回所有内容中包含“SQL”或“advanced”的文章。

注意事项
性能问题: 正则表达式匹配可能会导致查询性能下降,尤其是在大型数据集上。请确保在需要时优化查询性能。
索引: 正则表达式匹配通常无法利用索引,因此在执行频繁的正则表达式搜索时请注意性能影响。
数据库支持: 并非所有的 SQL 数据库管理系统都原生支持正则表达式匹配,请根据具体的数据库系统参考相应的文档。


http://www.ppmy.cn/devtools/53990.html

相关文章

leetcode67 二进制求和

给你两个二进制字符串 a 和 b ,以二进制字符串的形式返回它们的和。 示例 1: 输入:a "11", b "1" 输出:"100" 示例 2: 输入:a "1010", b "1011" 输出&#…

【数据结构与算法】树的遍历,森林遍历 详解

树的先根遍历、后根遍历对应其二叉树的哪种遍历 树的先根遍历对应其二叉树的先序遍历(根-左-右)。树的后根遍历对应其二叉树的中序遍历(左-根-右)。 森林的先根遍历、中根遍历对应其二叉树的哪种遍历? 森林的先根遍历对应其二…

【Python】从基础到进阶(一):了解Python语言基础以及变量的相关知识

🔥 个人主页:空白诗 文章目录 引言一、Python简介1.1 历史背景1.2 设计哲学1.3 语言特性1.4 应用场景1.5 为什么选择Python 二、Python语言基础2.1 注释规则2.1.1 单行注释2.1.2 多行注释2.1.3 文件编码声明注释 2.2 代码缩进2.3 编码规范2.3.1 命名规范…

【大作业】今日事、今日毕任务管理系统

一份声明文档,描述你的程序的功能,包括你的输入输出、程序提供的数据、预期输出等内容。 这是一个任务管理系统,功能列表如下。 一、这是主界面: === 欢迎使用 今日事今日毕 任务管理系统 === 查看所有任务查看未完成任务查看已完成任务添加新任务标记任务为已完成修改当天…

【34W字CISSP备考笔记】域1:安全与风险管理

1.1 理解、坚持和弘扬职业道德 1.1.1.(ISC)职业道德规范 1、行为得体、诚实、公正、负责、守法。 2、为委托人提供尽职、合格的服务。 3、促进和保护职业。 4、保护社会、公益、必需的公信和自信,保护基础设施。 1.1.2.组织道德规范 1、RFC 1087 &#xff0…

[项目名称]项目介绍、代码解释及推荐理由

项目介绍 ----  [项目介绍文字描述,如果需要,可引入代码进行说明]  代码解释 ----  [详细解释代码,针对关键部分进行分析]  项目地址 ----  请查看[gitcode链接]中的项目:https://gitcode.com/[你的项目地址]  推荐理…

前端模糊搜索关键字高亮

效果 代码 <template><view class"flexStart new-box"><view class"company"><!-- 输入框样式 --><view class"spaceBetween companyName" click.stop"isCompany true"><input type"text&quo…

计算机网络:3数据链路层

数据链路层 概述封装成帧和透明传输帧透明传输&#xff08;填充字节或比特&#xff09;差错检测奇偶校验循环冗余校验CRC Cyclic Redundancy Check 可靠传输停止-等待协议回退n帧协议&#xff08;滑动窗口协议&#xff09;选择重传协议 点对点协议PPP共享式以太网网络适配器&am…