oracle substr instruction trunc

前端之家收集整理的这篇文章主要介绍了oracle substr instruction trunc前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
substr(字符串,-10)

Oracle 字符串函数 substr(字符串,截取开始位置,截取长度)
1. 如果最后一个截取长度参数为空,则表示从截取开始位置起截到最末
2. 如果截取开始位置 为大于0的数字,则表示从字符串左数几位开始
3. 如果截取开始位置 为小于0的数字,则表示从字符串右数几位开始
--1.去掉;@
update GGZYJYZX_ZFCGXX t set t.zbrq=substr(t.zbrq,1,9)
where  t.zbrq like '%;@%'
--2,去掉中标金额的?
update GGZYJYZX_ZFCGXX t set t.zbjey=replace(t.zbjey,'?','')
--3,去掉小数点后面的。00
update GGZYJYZX_ZFCGXX t
 set t.zbjey = trunc(t.zbjey)
where t.zbjey like '%.00'
--4.去掉金额前面的第一个.,后面的也可以去掉前面的第二个小数点
--substr函数默认,起始index,后面默认是全部,如果省略的话
update GGZYJYZX_ZFCGXX t set t.zbjey=
substr(t.zbjey,instr(t.zbjey,'.',1) - 1) ||
        substr(t.zbjey,1) + 1)
 where substr(t.zbjey,-7,1)='.'
 
--4.单位换成元,
update GGZYJYZX_ZFCGXX t set t.zbjey=nvl(t.zbjey,0)*10000
--删除右边最后的几位
--3,去掉小数点后面的。00
update GGZYJYZX_ZFCGXX t
 set t.zbjey = substr(t.zbjey,length(t.zbjey)-3)
where t.zbjey like '%.00'
--
--5,去掉数字中的,号
update GGZYJYZX_ZFCGXX t
 set t.zbjey = replace(t.zbjey,','')
--7,截取字符串以特定符号为准
update GGZYJYZX_ZFCGXX t
 set t.zbjey = case when
 instr(t.zbjey,'(',1)>0 then
 substr(t.zbjey,1)-1) else
 t.zbjey end  

猜你在找的Oracle相关文章