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

9. Mysql 模糊查询和正则表达式

一、模糊查询

1.1 LIKE运算符

在MySQL中,可以使用LIKE运算符进行模糊查询。LIKE运算符用于匹配字符串模式,其中可以使用通配符来表示任意字符或字符序列。

示例代码

SELECT * FROM table_name WHERE column_name LIKE 'pattern';
  • table_name:要查询的表名
  • column_name:要查询的列名
  • pattern:要匹配的模式

通配符

  • %:表示任意字符序列(包括空字符)
  • _:表示任意单个字符

示例

SELECT * FROM users WHERE name LIKE '%John%';

以上示例将返回所有名字中包含"John"的用户。

1.2 NOT LIKE运算符

NOT LIKE运算符用于排除符合指定模式的结果。

示例代码

SELECT * FROM table_name WHERE column_name NOT LIKE 'pattern';

示例

SELECT * FROM users WHERE name NOT LIKE '%John%';

以上示例将返回所有名字中不包含"John"的用户。

1.3 REGEXP运算符

REGEXP运算符用于基于正则表达式进行模糊查询。正则表达式是一种强大的模式匹配工具,可以用于更复杂的模式匹配。

示例代码

SELECT * FROM table_name WHERE column_name REGEXP 'pattern';

示例

SELECT * FROM users WHERE name REGEXP '[Jj]ohn';

以上示例将返回所有名字中包含以"J"或"j"开头,后面跟着"ohn"的用户。

二、正则表达式

2.1 正则表达式基础

正则表达式是一种用于匹配字符串模式的工具。它使用一种特定的语法来描述要匹配的模式。

基本元字符

  • .:匹配任意字符
  • ^:匹配字符串的开始位置
  • $:匹配字符串的结束位置
  • []:匹配指定字符集中的任意一个字符
  • [^]:匹配任意不在指定字符集中的字符
  • *:匹配前面的元素零次或多次
  • +:匹配前面的元素一次或多次
  • ?:匹配前面的元素零次或一次
  • |:匹配两个或多个表达式中的任意一个

示例代码

SELECT * FROM table_name WHERE column_name REGEXP 'pattern';

2.2 REGEXP运算符

在MySQL中,可以使用REGEXP运算符基于正则表达式进行模糊查询。

示例代码

SELECT * FROM table_name WHERE column_name REGEXP 'pattern';

示例

SELECT * FROM users WHERE name REGEXP '^[A-Za-z]+$';

以上示例将返回所有名字只包含字母的用户。

2.3 RLIKE运算符

RLIKE运算符是REGEXP运算符的同义词,可以使用RLIKE代替REGEXP进行正则表达式匹配。

示例代码

SELECT * FROM table_name WHERE column_name RLIKE 'pattern';

示例

SELECT * FROM users WHERE name RLIKE '^[A-Za-z]+$';

以上示例将返回所有名字只包含字母的用户。

参考资料

  • MySQL官方文档:Pattern Matching
  • MySQL官方文档:Regular Expressions

相关文章:

9. Mysql 模糊查询和正则表达式

一、模糊查询 1.1 LIKE运算符 在MySQL中,可以使用LIKE运算符进行模糊查询。LIKE运算符用于匹配字符串模式,其中可以使用通配符来表示任意字符或字符序列。 示例代码 SELECT * FROM table_name WHERE column_name LIKE pattern;table_name&#xff1a…...

C语言题目强化-DAY14

题型指引 一、选择题二、编程题 ★★写在前面★★ 本题库源自互联网,仅作为个人学习使用,记录C语言题目练习的过程,如果对你也有帮助,那就点个赞吧。 一、选择题 1、有以下函数,该函数的功能是( &#xff…...

TypeScript和JavaScript有什么不同

TypeScript是JavaScript的一个超集,它添加了静态类型检查和其他一些高级特性。下面是TypeScript和JavaScript之间的一些主要区别: 类型系统:TypeScript引入了静态类型检查,可以在开发过程中捕获潜在的类型错误,并提供更…...

mysql使用--存储程序

1.概述 存储程序可以封装一些语句,为用户提供一种简单的方式来调用这个存储程序,从而间接执行其封装的语句。 根据调用方式的不同,可把存储程序分为存储例程、触发器、事件几种类型。其中,存储例程又可被细分为存储函数和存储过程…...

Win11修改用户名(超详细图文)

新买的电脑一般预装Windows11系统(家庭与学生版),新电脑初次开机使用微软邮箱账号登录,则系统将用户名自动设置成邮箱前5位字符。我的用户名便是一串数字【231xx】(qq邮箱前5位),看着很不舒服&a…...

【离散数学】——期末刷题题库(一阶逻辑基本概念)

🎃个人专栏: 🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客 🐳Java基础:Java基础_IT闫的博客-CSDN博客 🐋c语言:c语言_IT闫的博客-CSDN博客 🐟MySQL&#xff1a…...

队列实现方式、效率分析及应用场景

文章目录 一、什么是队列二、队列特性阻塞和非阻塞有界和无界单向链表和双向链表 三、Java队列接口继承图四、Java队列常用方法五、队列实现方式与效率分析六、队列的应用场景七、Python中队列与优先级队列使用 一、什么是队列 队列是一种特殊的线性表,遵循先入先出…...

使用git下载远程所有分支到本地

使用git下载远程所有分支到本地: 打开gitbash 输入以下命令即可: git clone git地址 cd git文件夹 git branch -r | grep -v \-> | while read remote; do git branch --track "${remote#origin/}" "$remote"; done git fetch -…...

解决LocalDateTime传输前端为时间的数组

问题出现如下: 问题出现原因: 默认序列化情况下会使用SerializationFeature.WRITE_DATES_AS_TIMESTAMPS。使用这个解析时就会打印出数组。 解决方法: 我在全文搜索处理方法总结如下: 1.前端自定义函数来书写 ,cols: [[ //表头{…...

01:编译lua及C调用

我们今天在windows平台编译lua,生成 lua动态库,lua.exe,luac.exe 我把这个目录上传到giee,使用下面命令获取它: git clone gitgitee.com:jameschenbo/lua_c_application.git 目录结构如下: build.cmd 是编译脚本,在…...

网络运维与网络安全 学习笔记2023.11.24

网络运维与网络安全 学习笔记 第二十五天 今日目标 DHCP中继代理、三层交换机DHCP、子网划分的原理、子网划分的应用 项目需求分析、技术方案选型、网络拓扑绘制 基础交换网络设计、内网优化、连接外网服务器 DHCP中继代理 DHCP中继概述 场景: DHCP客户端与DH…...

常见树种(贵州省):022绣线菊、月月青、金合欢、胡枝子、白刺花

摘要:本专栏树种介绍图片来源于PPBC中国植物图像库(下附网址),本文整理仅做交流学习使用,同时便于查找,如有侵权请联系删除。 图片网址:PPBC中国植物图像库——最大的植物分类图片库 一、绣线菊…...

微星主板开启VT

微星主板模拟器使用 开启VT 进入BIOS高级-》OC-》CPU特征-》intel 虚拟化技术-》允许...

【C++】类型转换 ② ( C++ 静态类型转换 static_cast | C 语言隐式转换弊端 | 代码示例 )

文章目录 一、静态类型转换 static_cast1、C 静态类型转换 static_cast2、C 语言隐式转换弊端3、代码示例 在之前写过一篇 C 类型转换的博客 【C 语言】类型转换 ( 转换操作符 | const_cast | static_cast | dynamic_cast | reinterpret_cast | 字符串转换 ) , 简单介绍了 C 类…...

14.配置Bean有哪几种方式?

配置Bean有哪几种方式? 基于xml: <bean class=“com.tuling.UserService” id=“”>基于注解: @Component(@Controller 、@Service、@Repostory) 前提:需要配置扫描包<component-scan> 反射调用构造方法基于java类配置: @Bean 可以自己控制实例化过程@Import 3种…...

RV1126芯片中的V4L2驱动开发

RV1126芯片概述 RV1126芯片是瑞芯微推出的一款高性能嵌入式人工智能处理器&#xff0c;具有较强的图像处理和音视频处理能力。它采用了双核Cortex-A7架构和一颗DSP核心&#xff0c;支持多种接口和外设&#xff0c;如MIPI CSI、HDMI、USB等&#xff0c;可以广泛应用于物联网、智…...

Linux中部署MongoDB

在 是一个必要的过程&#xff0c;因为MongoDB是一种流行的NoSQL数据库&#xff0c;它可以在大多数操作系统上使用。在本文中&#xff0c;我们将介绍如何在CentOS 8上部署MongoDB。 MongoDB的下载 您可以从MongoDB官网上下载最新的MongoDB版本。使用以下命令下载MongoDB&#…...

Halcon 5分钟学会9点标定 带图片示例、示例源码

9点标定应用流程 前置条件&#xff0c;相机焦距&#xff0c;视野固定高度和角度&#xff0c;光源光强度固定。 移动机械手&#xff0c;使用螺丝批头&#xff0c;在视野范围内的白纸上&#xff0c;点九个点&#xff0c;记录每个点位的位置&#xff0c;每个点位的顺序要和图像上获…...

【非监督学习 | 聚类】聚类算法类别大全 距离度量单位大全

&#x1f935;‍♂️ 个人主页: AI_magician &#x1f4e1;主页地址&#xff1a; 作者简介&#xff1a;CSDN内容合伙人&#xff0c;全栈领域优质创作者。 &#x1f468;‍&#x1f4bb;景愿&#xff1a;旨在于能和更多的热爱计算机的伙伴一起成长&#xff01;&#xff01;&…...

案例026:基于微信的原创音乐小程序的设计与实现

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;SSM JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder X 小程序…...

RestClient

什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端&#xff0c;它允许HTTP与Elasticsearch 集群通信&#xff0c;而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级&#xff…...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 在 GPU 上对图像执行 均值漂移滤波&#xff08;Mean Shift Filtering&#xff09;&#xff0c;用于图像分割或平滑处理。 该函数将输入图像中的…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台

🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表

##鸿蒙核心技术##运动开发##Sensor Service Kit&#xff08;传感器服务&#xff09;# 前言 在运动类应用中&#xff0c;运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据&#xff0c;如配速、距离、卡路里消耗等&#xff0c;用户可以更清晰…...

QT3D学习笔记——圆台、圆锥

类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体&#xff08;对象或容器&#xff09;QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质&#xff08;定义颜色、反光等&#xff09;QFirstPersonC…...

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要&#xff1a; 近期&#xff0c;在使用较新版本的OpenSSH客户端连接老旧SSH服务器时&#xff0c;会遇到 "no matching key exchange method found"​, "n…...

脑机新手指南(七):OpenBCI_GUI:从环境搭建到数据可视化(上)

一、OpenBCI_GUI 项目概述 &#xff08;一&#xff09;项目背景与目标 OpenBCI 是一个开源的脑电信号采集硬件平台&#xff0c;其配套的 OpenBCI_GUI 则是专为该硬件设计的图形化界面工具。对于研究人员、开发者和学生而言&#xff0c;首次接触 OpenBCI 设备时&#xff0c;往…...

沙箱虚拟化技术虚拟机容器之间的关系详解

问题 沙箱、虚拟化、容器三者分开一一介绍的话我知道他们各自都是什么东西&#xff0c;但是如果把三者放在一起&#xff0c;它们之间到底什么关系&#xff1f;又有什么联系呢&#xff1f;我不是很明白&#xff01;&#xff01;&#xff01; 就比如说&#xff1a; 沙箱&#…...

五子棋测试用例

一.项目背景 1.1 项目简介 传统棋类文化的推广 五子棋是一种古老的棋类游戏&#xff0c;有着深厚的文化底蕴。通过将五子棋制作成网页游戏&#xff0c;可以让更多的人了解和接触到这一传统棋类文化。无论是国内还是国外的玩家&#xff0c;都可以通过网页五子棋感受到东方棋类…...

基于 HTTP 的单向流式通信协议SSE详解

SSE&#xff08;Server-Sent Events&#xff09;详解 &#x1f9e0; 什么是 SSE&#xff1f; SSE&#xff08;Server-Sent Events&#xff09; 是 HTML5 标准中定义的一种通信机制&#xff0c;它允许服务器主动将事件推送给客户端&#xff08;浏览器&#xff09;。与传统的 H…...