ORACLE 正则解决初使化数据格式不一致

如: 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}$')

您可能感兴趣的文章:

  • Oracle正则表达式使用介绍
  • oracle正则表达式regexp_like的用法详解
  • Oracle 10G:PL/SQL正规表达式(正则表达式)手册
  • ORACLE数据库中怎么求除数字、字母之外的非中文字符的正则表达式
  • Oracle 正则表达式实例详解
  • Oracle中正则表达式的使用实例教程