Sql DB2将000000调整为0

Sql DB2将000000调整为0,sql,db2,Sql,Db2,我看过: IBM信息中心 我有一个六长的专栏和一个字符专栏。典型值为AA01AA。我需要将中间的2个字符从值中取出,然后转换成一个数字 我使用以下代码执行此操作:TRIM(L“0”FROM(SUBSTRING(Myfield,3,2))。在上面的示例中,该值为1。当值为000000时出现问题。修剪返回“”。我需要它返回0 我尝试过REPLACE(TRIM(L'0'FROM)(SUBSTRING(Myfield,3,2)),“”,'0'),但这只会返回一个空白字符串。我还尝试了TRANS

我看过:

  • 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是无效的数据类型、长度等


我将非常感谢您的帮助。

像这样的东西应该可以:

integer(substr(myField,3,2)))
SUBSTR
提取这两个字符,而
INTEGER
将其作为输入并将其转换为数字<代码>修剪完全没有必要

values(integer(substr('000000',3,2)))

1          
-----------
          0

  1 record(s) selected.

像这样的事情应该可以做到:

integer(substr(myField,3,2)))
SUBSTR
提取这两个字符,而
INTEGER
将其作为输入并将其转换为数字<代码>修剪完全没有必要

values(integer(substr('000000',3,2)))

1          
-----------
          0

  1 record(s) selected.

工作得很有魅力。谢谢你的帮助,工作很有魅力。谢谢你的帮助。