MySQL 学习笔记(2)— 通配符/正则表达/运算符
本文继续对 MySQL
中的通配符过滤、正则表达式、运算符进行分类总结。
1. 通配符
LIKE
指示 MySQL
,后跟的搜索模式利用通配符匹配而不是直接相等匹配进行比较,其中分为 %
和 _
通配符。
%
表示任何字符出现 0 次或者任意次数
如:
SELECT prod_id, prod_name FROM products
WHERE prod_id LIKE 'jet%'
_
只匹配单个个任意字符
SELECT prod_id, prod_name FROM products WHERE prod_name LIKE '_ ton anvil'
以下是一些模式和匹配的字符串:
LIKE 'en%'
:匹配以“en”开始的字符串,例如“english languages”、“end”;LIKE '%en%'
:匹配包含“en”的字符串,例如“length”、“when are you”;LIKE '%en'
:匹配以“en”结束的字符串,例如“ten”、“when”;LIKE 'Be_'
:匹配以“Be”开始,再加上一个任意字符的字符串。例如“Bed”、“Bet”;LIKE '_e%'
:匹配一个任意字符加上“e”开始的字符串,例如“her”、“year”。
2. 转义字符
转义字符可以将通配符 %
和 _
进行转义,将它们当作普通字符使用。默认的转义字符为反斜杠(\
)。
下面例子查询 25%
的数据
-- 查询包含字符串 25% 的数据
SELECT c1FROM t_likeWHERE c1 LIKE '%25\%%';
-- WHERE c1 LIKE '%25#%%' ESCAPE '#'; -- 指定 # 作为转义字符c1 |
----------|
进度:25% 已完成|
第一个 %
匹配多个任意字符;第二个 %
前面增加了转义字符(\
),表示匹配一个百分号;第三个 %
匹配多个任意字符。
查询结果中只有一条满足结果的数据,如果去掉转义字符(\
)将会返回两条记录。另外,也可以通过 ESCAPE
指定其他的转义字符。
3. 正则表达
- 正则表达模式主要有以下几种:
- 匹配字符类见下图
4. 运算符
主要有算术运算符、比较运算符、逻辑运算符、位运算符
- BETWEEN
SELECT emp_name, salaryFROM employeeWHERE salary BETWEEN 10000 AND 15000;
需要注意的是,BETWEEN
包含了两端的值(10000 和 15000)
- IN
IN
运算符可以用于查找列表中的值。只要匹配列表中的任何一个值,都会返回结果。
NOT
运算符可以结合其他的运算符一起使用,用于对查询条件的结果取反:
NOT BETWEEN
,位于范围之外。NOT IN
,不在列表之中。NOT LIKE
,不匹配某个模式。LIKE
运算符用于字符串的模糊查找。NOT EXISTS
,子查询中不存在结果。NOT IS NULL
,不为空。等价于IS NOT NULL
。
以下是 SQL
中各种条件运算符按照优先级从高到低进行的排列;必要时可以使用圆括号进行调整。
=、!=、<>、<、<=、>、>=
IS [NOT] NULL、[NOT] LIKE、[NOT] BETWEEN、[NOT] IN、[NOT] EXISTS
NOT
AND
OR
MySQL 学习笔记(2)— 通配符/正则表达/运算符相关推荐
- mysql学习笔记-使用通配符模糊查找
什么是通配符 通配符是用来匹配值的一部分的特殊字符,然后再字面值.通配符或两者组合构成完整的搜索条件. 如果使用通配符,必须结合LIKE操作符使用.LIKE后跟的是完整的搜索条件. 注意:通配符搜索只 ...
- Mysql学习笔记(三)运算符和控制流函数
原文:Mysql学习笔记(三)运算符和控制流函数 本章学习内容: 1.操作符 2.控制流程函数 操作符: i.圆括号.. 简单的介绍一下圆括号,圆括号的使用的目的是规定计算表达式的顺序...这个想必大 ...
- 【mysql学习笔记整理】
/*mysql学习笔记整理*/ /*常用的数据库操作对象*/ #库的操作 #创建 #数据库的创建 USE mysql; CREATE DATABASE db_x; #删除 #删除数据库 DROP DA ...
- MySQL学习笔记-基础篇1
MySQL 学习笔记–基础篇1 目录 MySQL 学习笔记--基础篇1 1. 数据库概述与MySQL安装 1.1 数据库概述 1.1.1 为什么要使用数据库 1.2 数据库与数据库管理系统 1.2.1 ...
- JavaEE 企业级分布式高级架构师(六)MySQL学习笔记(6)
MySQL学习笔记 性能优化篇 性能优化的思路 慢查询日志 慢查询日志介绍 开启慢查询功能 演示一 演示二 分析慢查询日志 MySQL自带的mysqldumpslow 使用percona-toolki ...
- MySQL学习笔记——尚硅谷李玉婷经典版MySQL基础笔记(一)
MySQL学习笔记--尚硅谷李玉婷经典版MySQL基础笔记(一) MySQL学习笔记目录 MySQL学习笔记--尚硅谷李玉婷经典版MySQL基础笔记(一) 一.基础知识 1.MySQL的语法规范 2. ...
- Mysql 学习笔记(快速复习)
Mysql 学习笔记(快速复习) 一.MySQL 基础 1.数据库连接工具 1.1.Navicat 使用教程 2.DDL 操作数据库 2.1.创建新数据库 2.2.删除数据库 2.3.使用数据库 3. ...
- 数据库MySQL学习笔记高级篇(周阳)
数据库MySQL学习笔记高级篇 1. mysql的架构介绍 mysql简介 高级Mysql mysqlLinux版的安装 mysql配置文件 mysql逻辑架构介绍 mysql存储引擎 2. 索引优化 ...
- Mysql学习笔记day1 --三天学完mysql所有知识点
Mysql 超全MySQL学习笔记,三天就可以学会熟练运用SQL语句,干货满满,文章末尾有相应的练习题,可以多练练加深印象,希望我的文章对你有所帮助 一.服务器 1.什么是服务器?用于提供共享资源文件 ...
最新文章
- 程序员请收好:10个非常实用的 VS Code 插件
- 弹性计算双周刊 第 9 期
- 你是合格的程序员吗?(欢迎大家自测)
- 交叉驰豫的影响因素_交叉滚子轴承系列吉林薄壁交叉滚子轴承用途博盈
- sed替换字符时 ' /等符号的处理
- 关于NGINX变量的一些测试结果
- selenium chromedriver usage
- ECharts学习总结(一):ECharts的第一个图表
- java-序列化以及反序列化
- python 动态执行 内存变化_深入理解python数组的动态扩容机制以及摊销分析
- 电脑微信不显示好友头像和聊天表情
- mx播放器有没有投屏功能_这个播放器真是太强大了!
- 07_音频录制01_命令行
- [置顶] LED办公楼宇照明节能方案及城市夜景照明节能方案
- linux vi命令的查询,关于Linux vi命令 vi命令一览表
- 使用eagle导出PCB制造商可用的gerber文件
- spark中的cache()、persist()和checkpoint()的区别
- ArduPilot之开源代码Sensor Drivers设计
- 如何在 Ubuntu 中加密硬盘
- 如何删除卸载苹果mac电脑应用软件没有残留垃圾
热门文章
- 2022-2028年中国TFT玻璃行业市场研究及前瞻分析报告
- OpenCV 笔记(09)— 常用的数据结构和函数(Vec、Point、Scalar、Size、Rect、cvtColor)
- Linux shell 学习笔记(15)— shell 正则表达式
- 查看LINUX发行版的名称及其版本号
- Linux top命令常见使用
- BiLSTM-CRF学习笔记(原理和理解) 维特比
- Http请求之优雅的RestTemplate
- 2002年3月英伟达发布核弹GPU与大算力自动驾驶芯片
- IP SOC与Camera ISP
- android app 内置图标icon 的标准,(目前是2019年)