猿问

有sql如下,不太懂什么意思?求指教

db2的strip函数怎么用?
(PS:只需要解释strip的语法,即strip怎么用即可)
select

'1'|| ' : '||
case 
when sum(nvl(字段,0)) = 0 then '0'
else TRIM(REPLACE(strip(replace(char(decimal(round(sum(nvl(字段1,0))*1.000000/sum(字段2)*0.200,2),10,2)), '0.', '#'),B,'0'),'#','0.'))
end as test3  
from 表名

素胚勾勒不出你
浏览 114回答 3
3回答

烙印99

strip跟trim类似,可以去掉2端指定的字符,strip(string, b|l|t, char)其中b=both,指去掉2端, l=leading,指去掉前导, t=trailing,指去掉后续如 strip('009900', b, '0')就是去掉2端的0,结果为'99'char可以没有,没有时指删除空白字符,跟trim/ltrim/rtrim类似

扬帆大鱼

STRIP函数的语法如下:  >>-STRIP--(---string --expression-- + ----------------------+---)-><'-,--+--BOTH----+--+----+---' +--LEADING-+&nbsp;+--L-------+&nbsp;+--TRAILING+&nbsp;'-T---------'&nbsp;B:BOTH表示两头&nbsp;L:LEADING表示去头&nbsp;T:TRAILING表示去尾&nbsp;strip-character:表示要截去的单个字符常量&nbsp;  比如:  db2 "select '#'||strip('00000999000',b,'0')||'#' from sysibm.sysdummy1"1&nbsp;&nbsp;-------------&nbsp;#999#&nbsp;&nbsp;1 record(s) selected.&nbsp;db2 "select '#'||strip(' 999 ',t,' ')||'#' from sysibm.sysdummy1"&nbsp;&nbsp;1&nbsp;&nbsp;-------------&nbsp;  # 999#1 record(s) selected.&nbsp;&nbsp;db2 "select '#'||strip(' 99 9 ',t,' ')||'#' from sysibm.sysdummy1"&nbsp;1&nbsp;&nbsp;-------------&nbsp;# 99 9#&nbsp;&nbsp;1 record(s) selected.&nbsp;&nbsp;db2 "select '#'||strip('00990090000',l,'0')||'#' from sysibm.sysdummy1"&nbsp;1&nbsp;&nbsp;-------------&nbsp;#990090000#&nbsp;&nbsp;1 record(s) selected.&nbsp;

梵蒂冈之花

STRIP 删除字符串开始和结尾的空白字符或其他指定的字符
随时随地看视频慕课网APP

相关分类

Oracle
MySQL
我要回答