mysql简单的正则表达式查询

正则表达式是为复杂搜索指定模式的强大方式。

MySQL采用Henry Spencer的正则表达式实施,其目标是符合POSIX 1003.2。

匹配以弄个数字开头的字符串

SELECT * FROM `gms_customer` where mobile REGEXP ‘^[0-9]‘;

匹配包含-的字符串,有点类似 like %-%

特殊字符一般使用  \\-  \\.  \\为前导,进行转移的作用

select * from gms_customer where mobile REGEXP ‘\\-‘;

匹配以 数字 结尾的字符串

select * from gms_customer where mobile REGEXP ‘[0-9]$‘;

匹配 无 或者 空  有点类似  name = ‘无‘ or name=‘‘

select * from gms_customer where name REGEXP ‘无|‘‘‘;

匹配包含2 或者 6  或者 3 的字符串

select * from gms_customer where customer_id REGEXP ‘[263]‘;

匹配字符:

[:a;num:]    任意字母和数字(同 [a-zA-Z0-9])

[:alpha:]    任意字符(同 [a-zA-Z])

[:blank:]    空格和制表(同 [\\t])

[:cntrl:]    ASCII控制字符(ASCII 0到31和127)

[:digit:]    任意数字(同[0-9])

[:graph:]    与["print:] 相同,但不包括空格

[:lower:]    任意小写字线(同 [a-z])

[:print:]    任意可打印字符

[:punct:]    既不在 [:alnum:] 又不在 [:cntrl:] 中的任意字符

[space:]     包括空格在内的任意空白字符(同 [\\f\\n\\t\\r\\v])

[:upper:]    任意大小字母(同 [A-Z])

[:xdigit:]   任意十六进制数字(同 [a-fA-F0-9])

定位符:

^        文本的开始

$        文本的末尾

[[:<:]]  词的开始

[[:>:]]  词的结尾

正则表达式基础知识可以参考:    正则表达式30分钟入门教程

http://deerchao.net/tutorials/regex/regex-1.htm

时间: 2024-08-04 18:18:10

mysql简单的正则表达式查询的相关文章

Spring MVC +MyBatis +MySQL 简单的登录查询 Demo 解决了mybatis异常

忙活了大半天,饭也没顾得上吃,哎许久不动手,一动手就出事,下面请看今天的重头戏,额吃个饭回来再发了! 1.整体结构 2.准备工作 数据库: --Mysql 5.6 创建数据库 wolf CREATE DATABASE wolf; 创建用户表 user create table user( id int  AUTO_INCREMENT  primary key, name varchar(25) not null, pwd varchar(20) not null, create_time dat

mysql中使用正则表达式查询

正则表达式功能确实很强大,那天专门抽空学学,这里就暂时在mysql查询中用用. 正则表达式强大而灵活,可以应用于非常复杂的查询. 选项 说明(自动加匹配二字) 例子 匹配值示例 ^ 文本开始字符 '^b'匹配以字母b开头的字符串 book, big, banana, bike $ 文本结束字符 'st$'匹配以st结尾的字符串 test, resist, persist . 任何单个字符 'b.t'匹配任何b和t之间有一个字符 bit, bat, but, bite * 0个或多个在它前面的字符

2016.3.25(mySQL简单的数据查询)

要从数据库中查询,要使用SQL的select语句,标准select查询有select子句,where子句,order by子句组成. 查询数据的标准结构为:select 列名 from 表名 where 条件 order by 列名 asc(升序)/desc(降序) 查询操作的分类:1.投影操作,指定查询结果中能显示哪些列 2.选择操作,指定哪行出现在结果中 3.排序操作,指定查询的结果以什么样的顺序显示 投影操作:select 列1,列2 from 表名 表前缀:select 表名.列名 fr

mysql简单的单表查询详解

mysql简单的单表查询详解 MySQL的查询操作: 单表查询:简单查询 多表查询:连续查询 联合查询: 选择和投影: 投影:挑选要显示的字段 选择:挑选符合条件的行 投影:SELECT 字段1, 字段2, ... FROM tb_name;  SELECT * FROM tb_name; 选择:SELECT 字段1, ... FROM tb_name WHERE 子句; 布尔条件表达式 mysql> CREATE TABLE students (SID INT UNSIGNED AUTO_IN

MySQL简单查询和单表查询

MySQL记录操作 概览 MySQL数据操作: DML 在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括 使用INSERT实现数据的插入 UPDATE实现数据的更新 使用DELETE实现数据的删除 使用SELECT查询数据以及. 插入数据insert 1. 插入完整数据(顺序插入) 语法一: INSERT INTO 表名(字段1,字段2,字段3-字段n) VALUES(值1,值2,值3-值n); 语法二: INSERT INTO 表名 VALUES (值1,值2,值

使用MySQL正则表达式查询

MySQL用WHERE子句对正则表达式提供了初步的支持,允许你指定用正则表达式过滤SELECT检索出的数据. REGEXP后所跟的东西作为正则表达式处理. 代码 SELECT prod_name FROM products WHERE prod_name REGEXP '1000' ORDER BY prod_name; ------返回------ +------------------------+ | prod_name | +------------------------+ | Jet

在MySQL中使用正则表达式

在MySQL中的REGEXP函数可以在平时使用SQL时匹配正则表达式,在平时在使用一些查询条件时可以使用REGEXP函数来匹配相应的字符从而可以替代很多自己不太熟悉或者是不了解的SQL函数且通用,从而提高日常的工作效率,在MySQL下的REGEXP函数使用十分简单,正则表达式的元字符可以参看:http://jim123.blog.51cto.com/4763600/1850919,REGEXP函数返回值是布尔值0和1,即,匹配为1,不配为0,如: mysql> SELECT 'Monty!' R

Mysql ==》 单表查询

主要内容: 1.查询语法 2.关键字的执行优先级 3.简单查询 4.单条件查询 5.where 约束 6.分组查询: group by 7.使用聚合函数查询 8.having 过滤 9.查询排序:order by 10限制查询的记录数:limit 11.使用正则表达式查询 先建数据库(文件夹).后表(文件)带字段,后记录(内容). company.employee 员工id id int 姓名 emp_name varchar 性别 sex enum 年龄 age int 入职日期 hire_d

MySQL中REGEXP正则表达式使用大全

REGEXP在mysql是用来执行正则表达式的一个函数 像php中的preg之类的函数了,regexp正则函数如果只是简单的查询使用like即可,但复杂的还是需要使用regexp了,下面我们来看看. MySql用户手册建议,在构造简单查询时,仍使用通配符. 如:Select [*|fieldname list] From [tablename] where [fieldname] like ["%someletter"|"%someletter%","_&