前端之家收集整理的这篇文章主要介绍了
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
原文链接:https://www.f2er.com/oracle/209886.html