mysql模糊查询 or_mysql的模糊查询
mysql模糊查询like/REGEXP
(1)like / not like
MySql的like语句中的通配符:百分号、下划线和escape
%:表示任意个或多个字符。可匹配任意类型和长度的字符。
Sql代码
select * from user where username like '%huxiao';
select * from user where username like 'huxiao%';
select * from user where username like '%huxiao%';
另外,如果需要找出u_name中既有“三”又有“猫”的记录,请使用and条件
SELECT * FROM [user] WHERE u_name LIKE ‘%三%’ AND u_name LIKE ‘%猫%’
若使用 SELECT * FROM [user] WHERE u_name LIKE ‘%三%猫%’
虽然能搜索出“三脚猫”,但不能搜索出符合条件的“张猫三”。
_:表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句:(可以代表一个中文字符)
Sql代码
select * from user where username like '_';
select * from user where username like 'huxia_';
select * from user where username like 'h_xiao';
如果我就真的要查%或者_,怎么办呢?使用escape,转义字符后面的%或_就不作为通配符了,注意前面没有转义字符的%和_仍然起通配符作用
Sql代码
select username from gg_user where username like '%xiao/_%' escape '/';
select username from gg_user where username like '%xiao/%%' escape '/'; 意思就是说/之后的_不作为通配符
(2)正则表达式
规则如下:
^ 匹配字符串的开始部分
$ 匹配字符串的结束部分
. 匹配任何字符(包括回车和新行)
a* 匹配0或多个a字符的任何序列
a+ 匹配1个或多个a字符的任何序列
a? 匹配0个或1个a字符
de|abc 匹配序列de或abc
(abc)* 匹配序列adc的0个或者多个实例
{n}、{m,n} {n}或{m,n}符号提供了编写正则表达式的更通用方式,能够匹配模式的很多前述原子(或“部分”)。m和n均为整数。
a* 可被写为a{0,}
a+ 可被写为a{1,}
a? 可被写为a{0,1}
[a-dX] 匹配任何是a,b,c,d或者X的字符,两个其他字符之间的’-'字符构成一个范围
[^a-dX] 匹配任何不是a,b,c,d或者X的字符,前面的字符’^'是否定的意思
举例如下:
^,匹配字符串开始位置,还是上面的例子,查询所有姓王的人名
select name from 表名 where name regexp '^王';
$,匹配字符串结束位置,如查询所有姓名末尾是“明”的人名
select name from 表名 where name regexp '明$';
.,匹配除\n之外的任意单个字符,类似于_,就不写sql语句了
[……],匹配[]中包含的任何一个字符,abcdef……xyz可以简写为[a-z],0123456789简写成[0-9],如查询出w/z/s开头的的人名
select name from 表名 where name regexp '^[wzs]';
[^……],匹配不包含在[]的字符,如查询出除了w/z/s开头之外的人名
select name from 表名 where name regexp '^[^wzs]';
a|b|c,匹配a或b或c,如将绩效为A-或A或A+的员工查出来,假设绩效列名performance
select performance from 表名 where performance regexp 'A-|A|A+';
*,重复0次或多次,熟悉javascript正则的同学都知道
'str*'可以匹配st/str/strr/strrr……
?,重复0次或1次
'str?'可以匹配st/str
mysql模糊查询 or_mysql的模糊查询相关推荐
- mysql 多表查询or_MySQL 多表查询
前期准备 #建表 create table dep( id int, name varchar(20) ); create table emp( id int primary key auto_inc ...
- MySQL单表多字段模糊查询
今天工作时遇到一个功能问题:就是输入关键字搜索的字段不只一个字段,比如 我输入: 超天才 ,需要检索出 包含这个关键字的 name . company.job等多个字段.在网上查询了一会就找到了答案. ...
- MySQL 数据库 like 语句通配符模糊查询小结
MySQL 报错:Parameter index out of range (1 > number of parameters, which is 0)--MySQL 数据库 like 语句通配 ...
- MySQL数据库中where条件查询(比较运算符查询、逻辑运算符查询、模糊查询、范围查询、空判断查询)
1. where条件查询的介绍 where条件查询可以对表中的数据进行筛选,条件成立的记录会出现在结果集中. where语句支持的运算符: 比较运算符 逻辑运算符 模糊查询 范围查询 空判断 wher ...
- MySQL基础(八):模糊查询的SQL语句、where条件查询、比较运算符查询、逻辑运算符查询、模糊查询、范围查询、空判断查询
文章目录 where条件查询 1. where条件查询的介绍 2. 比较运算符查询 3. 逻辑运算符查询 4. 模糊查询 5. 范围查询 6. 空判断查询 7. 小结 where条件查询 学习目标 能 ...
- MySQL 条件查询(多条件,模糊查询,范围查询,空值查询),分组查询,分组过滤
WHERE 条件查询 WHERE关键字用指定的条件从表中查询数据. 语法格式: WHERE 查询条件 条件查询: 有比较运算和逻辑运算的查询条件. 带有BETWEEN AND 关键字的查询条件. 配合 ...
- Mybatis基础:增删改查、模糊查询、多条件查询
Mybatis基础:增删改查.模糊查询.多条件查询http://www.bieryun.com/3132.html 1.新建测试数据库,根据实体类属性创建 2.实体类 [java] view plai ...
- 查询语句 like 模糊查询
查询语句 like 模糊查询 前言 建表语句在最后 like 应该是最常用的查询条件了 必须掌握地! like 的语法格式 LIKE '字符串' NOT LIKE '字符串' NOT :取反,不满足指 ...
- java 字符串模糊匹配_Java实现伪查询(全匹配+模糊匹配)
Java实现伪查询(全匹配+模糊匹配) 在项目中一直习惯了框架下[springboot+mybatis]的增删改查,然后领导突然给了一个需求,让我先弄一些假数据出来,用于页面的展示,业务啥的也没说,咱 ...
最新文章
- Shell 开发在运维中的经验总结
- url编码混乱下下载工具如何应对
- (巴什博弈 sg函数入门1) Brave Game -- hdu -- 1846
- 阿里云上到底能运行SAP哪些产品?
- @PropertySource和@ConfigurationProperties
- English trip EM2-LP-2A Around the world Teacher:Taylor
- 印花对花不准(错花)形态及成因
- python学习--关注容易被忽略的知识点--(二)函数
- 处理Easyui的Datagrid无法及时刷新问题
- Ubuntu下配置源地址/本地源/官方源
- 开放式激光振镜运动控制器:C++振镜矫正方法与实现
- 华硕路由 ac ax_【路由器】华硕网络开启802.11ax电竞生态
- idea验证失败_阿里云滑块验证失败解决方案
- 微短剧的春天里,抖音、快手各有所思
- GPT-4 终问世!旧王已死,新王当立!面对AI,人类真的准备好了吗?
- OBS录屏软件无法打开的问题,无法捕获到游戏画面的问题
- 从 Secure Element 到 Android KeyStore
- .NET 6新东西--PeriodicTimer
- 谷歌插件之蓝湖代码生成器,iOS,Android,Swift,Flutter
- Unity发布的软件加密方式
热门文章
- Linux下调tcp最大参数
- 小强升职记思维导图_你学会用 “思维导图” 学英语了吗?
- e300氛围灯哪里调节_让快乐来得更简单!体验新宝骏E300/E300 PLUS
- c语言判断字符是汉字,c语言里面判断字符是否为汉字
- QQ浏览器怎样在首页显示优先推荐的网站
- 如何解决Win11开始菜单无法固定的问题
- QQ浏览器如何开启夜间模式 夜间模式使用技巧分享
- 小技巧来助阵 玩转Google Chrome(谷歌浏览器)
- 详解var、let、const关键词声明变量的区别,以及变量提升、块级作用域的认识等。
- php 的不等于符号,mysql 不等于 符号写法