当前位置: 首页 > news >正文

【mysql】关键词搜索实现

关键词搜索实现两种方式

-- 方式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.lryc.cn/news/379326.html

相关文章:

  • Python面试十问2
  • C# OpenCvSharp 图像处理函数-颜色通道-cvtColor
  • 总结之LangChain(三)——模型IO缓存
  • 判断一个Java服务是不是GateWay
  • 三次插值曲线--插值技术
  • python循环结构
  • 深入理解Netty的Pipeline机制:原理与实践详解
  • 直方图均衡化示例
  • 私域电商新纪元:消费增值模式的创新与成功实践
  • Java——IO流(一)-(6/8):字节流-FileInputStream 每次读取多个字节(示例演示)、一次读取完全部字节(方式一、方式二,注意事项)
  • 服务器SSH 免密码登录
  • Linux安装MySQL以及远程连接
  • SQL Server 数据库分页技术详解:选择最佳方法优化查询性能”。
  • electron录制-镜头缩放、移动
  • 红队内网攻防渗透:内网渗透之内网对抗:信息收集篇自动项目本机导出外部打点域内通讯PillagerBloodHound
  • 2024最新IDEA插件开发+发布全流程 SelectCamelWords[选中驼峰单词](idea源代码)
  • 【网络安全】网络安全基础精讲 - 网络安全入门第一篇
  • 初识 GPT-4 和 ChatGPT
  • 【C语言】解决C语言报错:Array Index Out of Bounds
  • 【C++】一个极简但完整的C++程序
  • Lua迭代器详解(附加红点功能实例)
  • 锂磷硫(LPS)属于硫化物固态电解质 Li7P3S11是代表性产品
  • PointCloudLib 点云边缘点提取 C++版本
  • 【Qt】QList<QVariantMap>中数据修改
  • 如何避免vue的url中使用hash符号?
  • Java学习 - MySQL存储过程、函数和触发器练习实例
  • 【深度神经网络 (DNN)】
  • ES全文检索支持繁简和IK分词检索
  • 解决Visual Studio Code在Ubuntu上崩溃的问题
  • 【OpenGauss源码学习 —— (ALTER TABLE(SET attribute_option))】