条件用于模式匹配。相等运算符(=)指的是一个字符值与另一个字符值完全匹配,而 LIKE
条件通过在第一个值中搜索由第二个字符值指定的模式来将一个字符值的一部分与另一个字符值进行匹配。
LIKE
使用输入字符集定义的字符来计算字符串。
语法
除了 LIKE
,特殊的模式匹配字符 _
表示值中的一个字符恰好匹配,%
表示值中的零个或多个字符匹配。模式 %
不能与 NULL
匹配。
参数
示例
以下语句使用了 LIKE
:
ESCAPE '\'
会将 %A\_B%
中 \
后面的模式匹配符‘_’解释为普通的字符。
REGEXP_LIKE 条件
REGEXP_LIKE
用于正则表达式匹配。REGEXP_LIKE
使用输入字符集定义的字符评估字符串。
参数 | 说明 |
---|---|
用作搜索值的字符表达式,数据类型可以是 | |
pattern | 正则表达式,数据类型可以是 |
source_char | 数据类型 |
如果模式的数据类型与 source_char
的数据类型不同,OceanBase 将模式转换为 source_char
的数据类型。
创建表 employees,并向里面插入数据。执行以下语句:
查询返回名字为 Steven 或 Stephen 的员工的名字和姓氏(其中 first_name
以 Ste 开头,以 en 结尾,中间是 v 或 ph),执行以下语句:
ORDER BY first_name, last_name;
查询结果如下: