DB2 TRIM 000000到0

时间:2016-03-10 07:35:46

标签: sql db2

我看过:

我有一个六长的列和一个字符列。典型值为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 个答案:

答案 0 :(得分:2)

这样的事情可以解决问题:

integer(substr(myField,3,2)))

SUBSTR提取两个字符,INTEGER将其作为输入并将其转换为数字。 <{1}}根本没有必要。

TRIM