DB2 TRIM 000000 到 0
Posted
技术标签:
【中文标题】DB2 TRIM 000000 到 0【英文标题】:DB2 TRIM 000000 to 0 【发布时间】:2016-03-10 07:35:45 【问题描述】:我看过:
DB2 SQL Query Trim inside trim Trimming Blank Spaces in Char Column in DB2 SQL Trim after final semi colon IBM 信息中心。我有一个六长列和一个字符列。典型值为 AA01AA。我需要从值中取出中间 2 个字符并转换为数字。
我正在使用以下代码执行此操作:TRIM(L '0' FROM(SUBSTRING(Myfield, 3, 2)))
。在上面的示例值中,我给出了 1。当值为 000000 时出现问题。修剪返回 ''。我需要它返回 0。
我试过REPLACE(TRIM(L '0' FROM(SUBSTRING(Myfield, 3, 2))),'' ,'0')
,但这只是给了我一个空白字符串。我也尝试过TRANSLATE(TRIM(L '0' FROM(SUBSTRING(Myfield, 3, 2))), '0', '')
,但这给出了一个关于参数 03 是无效数据类型、长度等的错误。
我将不胜感激。
【问题讨论】:
【参考方案1】:这样的事情应该可以解决问题:
integer(substr(myField,3,2)))
SUBSTR
提取这两个字符,INTEGER
将其作为输入并将其转换为数字。 TRIM
根本不需要。
values(integer(substr('000000',3,2)))
1
-----------
0
1 record(s) selected.
【讨论】:
工作就像一个魅力。感谢您的帮助。以上是关于DB2 TRIM 000000 到 0的主要内容,如果未能解决你的问题,请参考以下文章