SQL Server 2008 和 Crystal Reports XI
我不确定为什么我不能转换这些值。我试过 cast 和 convert 都导致相同的错误。此列最初确实包含字母数字值,但在我的主要查询将值插入临时表后,那里只有数字。
转换
CASE WHEN ISNUMERIC(myfield) = 1 THEN CAST(myfield AS INT) ELSE 0 END
返回零。列中的数据示例如下:
65
89
151
175
210
我确定我遗漏了一些明显的东西,但我无法弄清楚。在水晶报告中,我能够成功使用:
IF isnumeric({myfield}) then tonumber({myfield}) else 999
成功转换没有任何问题。为什么它会在水晶中工作而不是在 SQL 中?