oracle 中正则表达式的使用

         我们知道正则表达式是一个很强大的功能,不管是在java语言,php服务器脚本,还是js客户端脚本,都有自己的正则表达式,oracle从10g开始也开始有自己的正则表达是,这样我能就能使用正则表达的强大功能获取自己要的数据。

1. 首先查看一下版本是不是支持

select * from v$version;(一般情况肯定支持)

11g的肯定支持

  2.来一个演示

我们是从标准的发票表里面获取数据,现在要求是:获取编号是以1开始,以9结束的信息(为了方便,只是显示编号)。

语句如下:

select aia.invoice_id from ap_invoices_all aia where regexp_like(aia.invoice_id,’^1[0-9]*9$’);

学习过正则表达式的同学都是懂得,^以什么开始,$以什么结束,[]表示显示数据,这里是0-9,*表示多个包含0,+表示至少是一个。

显示结果:

共有 17 条评论

Top