加入收藏 | 设为首页 | 会员中心 | 我要投稿 我爱制作网_池州站长网 (https://www.0566zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql 根域名 正则_Mysql——通配符和正则表达式的使用

发布时间:2023-02-20 13:51:25 所属栏目:MySql教程 来源:
导读:  1.like操作符和百分号通配符

  %表示任何字符出现任意次数。

  查询出表TABLE中NAME字段中任意位置包含i的行:

  select * from TABLE where NAME like '%i%'

  查询出表TABLE中
  1.like操作符和百分号通配符
 
  %表示任何字符出现任意次数。
 
  查询出表TABLE中NAME字段中任意位置包含i的行:
 
  select * from TABLE where NAME like '%i%'
 
  查询出表TABLE中NAME字段中开头位置包含i的行:
 
  select * from TABLE where NAME like 'i%'
 
  查询出表TABLE中NAME字段中结尾位置包含i的行
 
  select * from TABLE where NAME like '%i'
 
  注意:%不能匹配NULL;有一些字段首尾可能会出现空格,为了避免影响匹配结果,可以是同LTrim和RTrim函数去掉首尾的空格。
 
  2.下划线通配符
 
  下划线通配符只代表一个字符。
 
  使用方法和%一样,比如查询出表TABLE中NAME为‘AAA’开头的四个字母的行
 
  select * from TABLE where NAME like 'AAA_'
 
  3.正则表达式
 
  除了使用like进行模糊匹配,还可以使用正则表达式进行模糊匹配。
 
  正则表达式操作符:REGEXP
 
  3.1基本字符匹配
 
  查询出表TABLE中,字段NAME以A结尾的且只有两个字母的所有行:
 
  select * from TABLE where NAME regexp '.A'
 
  .是正则表达式的特殊字符,代表匹配任意一个字符。
 
  3.2进行或(OR)匹配
 
  查询出表TABLE中,字段NAME为AAA或BBB的行:
 
  select * from TABLE where NAME regexp 'AAA|BBB'
 
  |为正则表达式的或操作符。
 
  3.3匹配多个字符
 
  查询出表TABLE中,字段NAME以A或B或C开头,且结尾为DD的行:
 
  select * from TABLE where NAME regexp '[ABC]DD'
 
  [ABC]定义一组字符,意思是:匹配A或B或C。
 
  3.4范围匹配
 
  查询出表TABLE中,字段NAME以1到9开头,且结尾为A的行:
 
  select * from TABLE where NAME regexp '[1-9]A'
 
  [1-9]意为:匹配1到9任意数字,[a-z]意为匹配任意字符。
 
  3.5匹配特殊字符
 
  这种问题几乎在每种语言中都会出现mysql通配符使用,即需要查询的内容中包含特殊字符。这时候就需要转义了。
 
  在mysql中转义符为\\
 
  查询出表TABLE中,NAME字段包含.的行:
 
  select * from TABLE where NAME regexp '\\.'
 
  3.6正则表达式常用元字符
 
 

(编辑:我爱制作网_池州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!