ORACLE 10G支持正则表达式
2009-08-25 23:19
381 查看
ORACLE
10G中的支持正则表达式的函数主要有下面四个:
1
,
REGEXP_LIKE
:与
LIKE
的功能相似
2
,
REGEXP_INSTR
:与
INSTR
的功能相似
3
,
REGEXP_SUBSTR
:与
SUBSTR
的功能相似
4
,
REGEXP_REPLACE
:与
REPLACE
的功能相似
用了一下
REGEXP_LIKE,虽然是一个很简单的正则,但还是比like略慢一点.这个当然要视情况了,影响的因素也有很多.如果在like不好做的时候可以考虑用正则来做.不过肯定得测试一下性能.比如对于 like '%abc%'时,查询是不会走索引的,当然可以考虑用正则,如果是 like'abc%' 会走索引,当然具体还要看数据集了.不确定正则是否也走索引,有些情况也不是不能走的,比如 '^abc/w+',理论上应该是跟like 'abc%' 一个道理.因为是以abc为开头的,相当于左边没有通配符.还是坚持认为,除非 like没法做,最好慎用正则,多数情况是全表扫描.
10G中的支持正则表达式的函数主要有下面四个:
1
,
REGEXP_LIKE
:与
LIKE
的功能相似
2
,
REGEXP_INSTR
:与
INSTR
的功能相似
3
,
REGEXP_SUBSTR
:与
SUBSTR
的功能相似
4
,
REGEXP_REPLACE
:与
REPLACE
的功能相似
用了一下
REGEXP_LIKE,虽然是一个很简单的正则,但还是比like略慢一点.这个当然要视情况了,影响的因素也有很多.如果在like不好做的时候可以考虑用正则来做.不过肯定得测试一下性能.比如对于 like '%abc%'时,查询是不会走索引的,当然可以考虑用正则,如果是 like'abc%' 会走索引,当然具体还要看数据集了.不确定正则是否也走索引,有些情况也不是不能走的,比如 '^abc/w+',理论上应该是跟like 'abc%' 一个道理.因为是以abc为开头的,相当于左边没有通配符.还是坚持认为,除非 like没法做,最好慎用正则,多数情况是全表扫描.
相关文章推荐
- Oracle 10g正则表达式
- Oracle 10G:PL/SQL正规表达式(正则表达式)手册
- Oracle 10G支持的正则查询
- Oracle 10g 正则表达式
- oracle 10g正则表达式 REGEXP_LIKE 用法
- [每日一题] OCP1z0-047 :2013-07-13 oracle 10g正则表达式 REGEXP_LIKE 用法.....................................2
- Oracle 10g 正则表达式
- ORACLE中的支持正则表达式的函数主要有下面四个:
- Oracle 10g 正则表达式
- [转]Oracle 10G:PL/SQL正规表达式(正则表达式)手册
- oracle 10g正则表达式 REGEXP_LIKE 用法
- ORACLE支持正则表达式的函数
- ORACLE中的支持正则表达式的函数
- oracle 10G 正则表达式
- oracle 10g正则表达式 REGEXP_LIKE 用法
- oracle 10g正则表达式REGEXP_LIKE用法
- Oracle 10g正则表达式
- oracle 10g 的正则表达式例子
- Oracle 支持正则表达式的函数
- oracle(10G)的正则表达式(regular expression)简单介绍