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的模糊查询相关推荐

  1. mysql 多表查询or_MySQL 多表查询

    前期准备 #建表 create table dep( id int, name varchar(20) ); create table emp( id int primary key auto_inc ...

  2. MySQL单表多字段模糊查询

    今天工作时遇到一个功能问题:就是输入关键字搜索的字段不只一个字段,比如 我输入: 超天才 ,需要检索出 包含这个关键字的 name . company.job等多个字段.在网上查询了一会就找到了答案. ...

  3. MySQL 数据库 like 语句通配符模糊查询小结

    MySQL 报错:Parameter index out of range (1 > number of parameters, which is 0)--MySQL 数据库 like 语句通配 ...

  4. MySQL数据库中where条件查询(比较运算符查询、逻辑运算符查询、模糊查询、范围查询、空判断查询)

    1. where条件查询的介绍 where条件查询可以对表中的数据进行筛选,条件成立的记录会出现在结果集中. where语句支持的运算符: 比较运算符 逻辑运算符 模糊查询 范围查询 空判断 wher ...

  5. MySQL基础(八):模糊查询的SQL语句、where条件查询、比较运算符查询、逻辑运算符查询、模糊查询、范围查询、空判断查询

    文章目录 where条件查询 1. where条件查询的介绍 2. 比较运算符查询 3. 逻辑运算符查询 4. 模糊查询 5. 范围查询 6. 空判断查询 7. 小结 where条件查询 学习目标 能 ...

  6. MySQL 条件查询(多条件,模糊查询,范围查询,空值查询),分组查询,分组过滤

    WHERE 条件查询 WHERE关键字用指定的条件从表中查询数据. 语法格式: WHERE 查询条件 条件查询: 有比较运算和逻辑运算的查询条件. 带有BETWEEN AND 关键字的查询条件. 配合 ...

  7. Mybatis基础:增删改查、模糊查询、多条件查询

    Mybatis基础:增删改查.模糊查询.多条件查询http://www.bieryun.com/3132.html 1.新建测试数据库,根据实体类属性创建 2.实体类 [java] view plai ...

  8. 查询语句 like 模糊查询

    查询语句 like 模糊查询 前言 建表语句在最后 like 应该是最常用的查询条件了 必须掌握地! like 的语法格式 LIKE '字符串' NOT LIKE '字符串' NOT :取反,不满足指 ...

  9. java 字符串模糊匹配_Java实现伪查询(全匹配+模糊匹配)

    Java实现伪查询(全匹配+模糊匹配) 在项目中一直习惯了框架下[springboot+mybatis]的增删改查,然后领导突然给了一个需求,让我先弄一些假数据出来,用于页面的展示,业务啥的也没说,咱 ...

最新文章

  1. Shell 开发在运维中的经验总结
  2. url编码混乱下下载工具如何应对
  3. (巴什博弈 sg函数入门1) Brave Game -- hdu -- 1846
  4. 阿里云上到底能运行SAP哪些产品?
  5. @PropertySource和@ConfigurationProperties
  6. English trip EM2-LP-2A Around the world Teacher:Taylor
  7. 印花对花不准(错花)形态及成因
  8. python学习--关注容易被忽略的知识点--(二)函数
  9. 处理Easyui的Datagrid无法及时刷新问题
  10. Ubuntu下配置源地址/本地源/官方源
  11. 开放式激光振镜运动控制器:C++振镜矫正方法与实现
  12. 华硕路由 ac ax_【路由器】华硕网络开启802.11ax电竞生态
  13. idea验证失败_阿里云滑块验证失败解决方案
  14. 微短剧的春天里,抖音、快手各有所思
  15. GPT-4 终问世!旧王已死,新王当立!面对AI,人类真的准备好了吗?
  16. OBS录屏软件无法打开的问题,无法捕获到游戏画面的问题
  17. 从 Secure Element 到 Android KeyStore
  18. .NET 6新东西--PeriodicTimer
  19. 谷歌插件之蓝湖代码生成器,iOS,Android,Swift,Flutter
  20. Unity发布的软件加密方式

热门文章

  1. Linux下调tcp最大参数
  2. 小强升职记思维导图_你学会用 “思维导图” 学英语了吗?
  3. e300氛围灯哪里调节_让快乐来得更简单!体验新宝骏E300/E300 PLUS
  4. c语言判断字符是汉字,c语言里面判断字符是否为汉字
  5. QQ浏览器怎样在首页显示优先推荐的网站
  6. 如何解决Win11开始菜单无法固定的问题
  7. QQ浏览器如何开启夜间模式 夜间模式使用技巧分享
  8. 小技巧来助阵 玩转Google Chrome(谷歌浏览器)
  9. 详解var、let、const关键词声明变量的区别,以及变量提升、块级作用域的认识等。
  10. php 的不等于符号,mysql 不等于 符号写法