KingbaseES 判断字符串包含的几种方法
判断字符串包含的几种方法:
1. position
test=# select position('aa' in 'abcd');
position
----------
0
(1 行记录)
test=# select position('ab' in 'abcd');
position
----------
1
(1 行记录)
test=# select position('ab' in 'abcdab');
position
----------
1
(1 行记录)
如果包含目标字符串,会返回目标字符串笫一次出现的位置,可以根据返回值是否大于0来判断是否包含目标字符串。
2. strpos和instr 这两个函数的作用是声明子串的位置
test=# select strpos('abcd','aa');
strpos
--------
0
(1 行记录)
test=# select strpos('abcd','ab');
strpos
--------
1
(1 行记录)
test=# select strpos('abcdab','ab');
strpos
--------
1
(1 行记录)
test=# select instr('abcd','aa');
instr
-------
0
(1 行记录)
test=# select instr('abcd','ab');
instr
-------
1
(1 行记录)
test=# select instr('abcdab','ab');
instr
-------
1
(1 行记录)
作用与position函数一致。
3. 使用正则表达式 ~ 或者 like :
test=# select 'abcd' like '%aa%';
?column?
----------
f
(1 行记录)
test=# select 'abcd' like '%ab%';
?column?
----------
t
(1 行记录)
test=# select 'abcdab' like '%ab%';
?column?
----------
t
(1 行记录)
test=# select 'abcd' ~ 'aa';
?column?
----------
f
(1 行记录)
test=# select 'abcd' ~ 'ab';
?column?
----------
t
(1 行记录)
test=# select 'abcdab' ~ 'ab';
?column?
----------
t
(1 行记录)
KINGBASE研究院