- MariaDB数据库操作
- MariaDB表操作
- MariaDB表结构修改
- MariaDB增删改查操作
- MariaDB子句
- MariaDB聚合函数
- MariaDB连接
- MariaDB操作符
- MariaDB正则与条件
- MariaDB约束
- MariaDB导出与导入
- MariaDB权限与权限管理
正则表达式
MariaDB通过REGEXP
运算符提供基于正则表达式的匹配。
语法:
expression REGEXP pattern
参数说明:
- expression:字符表达式,如列或字段。
- pattern:正则表达式匹配信息。模式可以是以下的组合:
编号 | pattern 值 | 描述 |
---|---|---|
1 | ^ | 匹配一个字符串的开始。如果与“m” 的匹配参数一起使用,则匹配表达式中任何位置的行的开头。 |
2 | $ | 匹配字符串的结尾。 如果与“m” 的匹配参数一起使用,则匹配表达式中任何位置的行的末尾。 |
3 | * | 匹配零次或多次发生。 |
4 | + | 匹配一个或多个事件。 |
5 | ? | 匹配零个或一个发生。 |
6 | . | 匹配除null 之外的任何字符。 |
7 | / | 用作*“或”*来指定多个选项。 |
8 | [ ] | 用于指定一个匹配列表,尝试匹配列表中的任何一个字符。 |
9 | [^ ] | 用于指定一个不匹配的列表,尝试匹配除列表中的字符以外的任何字符。 |
10 | ( ) | 用于将表达式分组为一个子表达式。 |
11 | {m} | 匹配m 次。 |
12 | {m,} | 至少匹配m 次。 |
13 | {m,n} | 至少匹配m 次,但不多于n 次。 |
14 | \n | n 是1 到9 之间的数字。匹配在遇到\n 之前在() 内找到的第n 个子表达式。 |
15 | [..] | 匹配一个可以多于一个字符的整理元素。 |
16 | [::] | 匹配字符类。 |
17 | [==] | 匹配等价类。 |
18 | \d | 匹配一个数字字符。 |
19 | \w | 匹配一个字符。 |
20 | \s | 匹配一个空白字符。 |
21 | *? | 匹配前面的模式零次或多次发生。 |
22 | +? | 匹配前面的模式一个或多个事件。 |
23 | ?? | 匹配前面的模式零次或一次出现。 |
24 | {n}? | 匹配前面的模式n 次。 |
25 | {n,}? | 匹配前面的模式至少n 次。 |
26 | {n,m}? | 匹配前面的模式至少n 次,但不超过m 次。 |
示例
SELECT 'Monty!' REGEXP 'm%y%%';
+-------------------------+
| 'Monty!' REGEXP 'm%y%%' |
+-------------------------+
| 0 |
+-------------------------+
SELECT 'Monty!' REGEXP '.*';
+----------------------+
| 'Monty!' REGEXP '.*' |
+----------------------+
| 1 |
+----------------------+
条件
以下是在MariaDB中使用CRUD 操作的条件列表。条件通常与SELECT
语句一起使用。参考下表列出的一部分条件 :
编号 | 条件 | 描述 |
---|---|---|
1 | AND | 在满足2 个以上的条件时使用。 |
2 | OR | 在满足任何一个条件时使用。 |
3 | AND & OR | 当AND&OR 条件满足时使用它。 |
4 | LIKE | 在where 子句中使用简单的模式匹配(通配符)。 |
5 | RLIKE | 在where 子句中使用正则表达式匹配 |
6 | IN | 它用作多个OR 条件的替代 |
7 | NOT | 它用来否定一个条件 |
8 | IS NULL | 它用于测试一个NULL 值。 |
9 | IS NOT NULL | 它用来测试一个非NULL 值。 |
10 | BETWEEN | 它用于在一个范围内(包括)进行检索。 |
11 | EXISTS | 它用于指定是否符合条件,然后子查询至少返回一行。 |