在字符串参数' DECFLOAT'中找到无效字符。

时间:2014-03-24 15:16:57

标签: sql db2

在case语句中使用时,我似乎遇到了使用字段的问题。例如,当我尝试:

select a.*,
case when value > 0 then non_zero
     else value
from mytable a

我得到的地方:

Invalid character found in string argument of the function 'DECFLOAT'

通常我会忘记将字段转换为十进制来遇到这种类型的错误,但这没有任何区别。但是,如果我尝试:

select * from mytable where value > 0

然后运行正常。

那么为什么我的标准在案例陈述中不起作用?

1 个答案:

答案 0 :(得分:1)

我想你忘了你的"结束案例"。试试这个:

select a.*,
case 
  when value > 0 then non_zero
  else value
end case
from a