当前位置: 数据库>oracle
ORACLE 正则解决初使化数据格式不一致
来源: 互联网 发布时间:2014-09-07
本文导语: 如: 2000-1-1==> 2000-01-01、2000-01-1==>2000-01-01、2000-1-01==>2000-01-01 以前会写一个function/procedure之类的脚本,大量的IF ELSE。。。 今次无意中发现oracle10g已经支持正则功能,上述问题也就迎刃而解了。。 代码如下:UPDATE LZ__EQ_RHGL LZRH SE...
如: 2000-1-1==> 2000-01-01、2000-01-1==>2000-01-01、2000-1-01==>2000-01-01
以前会写一个function/procedure之类的脚本,大量的IF ELSE。。。
今次无意中发现oracle10g已经支持正则功能,上述问题也就迎刃而解了。。
UPDATE LZ__EQ_RHGL LZRH SET LS__SP_GHTIME = SUBSTR(LZ__SP_GHTIME, 1, 5) || '0' || SUBSTR(LZ__SP_GHTIME, 6, 2) || '0' || SUBSTR(8, 1) WHERE RETEXT_LINE(LZ__SP_GHTIME, '^d{4}-d{1}-d{1}$')
以前会写一个function/procedure之类的脚本,大量的IF ELSE。。。
今次无意中发现oracle10g已经支持正则功能,上述问题也就迎刃而解了。。
代码如下:
UPDATE LZ__EQ_RHGL LZRH SET LS__SP_GHTIME = SUBSTR(LZ__SP_GHTIME, 1, 5) || '0' || SUBSTR(LZ__SP_GHTIME, 6, 2) || '0' || SUBSTR(8, 1) WHERE RETEXT_LINE(LZ__SP_GHTIME, '^d{4}-d{1}-d{1}$')