db2的strip函数怎么用?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了db2的strip函数怎么用?相关的知识,希望对你有一定的参考价值。

db2的strip函数怎么用?
有sql如下,不太懂什么意思。(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 表名

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类似
参考技术A   STRIP函数的语法如下:

  >>-STRIP--(---string --expression-- + ----------------------+---)-><
'-,--+--BOTH----+--+----+---' +--LEADING-+
+--L-------+
+--TRAILING+
'-T---------'
B:BOTH表示两头
L:LEADING表示去头
T:TRAILING表示去尾
strip-character:表示要截去的单个字符常量

  比如:
  db2 "select '#'||strip('00000999000',b,'0')||'#' from sysibm.sysdummy1"
1
-------------
#999#
1 record(s) selected.
db2 "select '#'||strip(' 999 ',t,' ')||'#' from sysibm.sysdummy1"
1
-------------

  # 999#
1 record(s) selected.
db2 "select '#'||strip(' 99 9 ',t,' ')||'#' from sysibm.sysdummy1"
1
-------------
# 99 9#
1 record(s) selected.
db2 "select '#'||strip('00990090000',l,'0')||'#' from sysibm.sysdummy1"
1
-------------
#990090000#
1 record(s) selected.
参考技术B STRIP 删除字符串开始和结尾的空白字符或其他指定的字符

以上是关于db2的strip函数怎么用?的主要内容,如果未能解决你的问题,请参考以下文章

求助:db2中可以用stuff函数么,报42884错误

pycharm中strip、lower、replace函数怎么连用

db2数据库常用函数

Python 中strip()方法怎么用?

Python 中strip()方法怎么用?

请问想要在db2x数据库中使用max函数应该怎么处理?