3

我有一个带有字符串列的表。我使用函数 TO_INTEGER() 将此列转换为数字。工作正常。但是,如果我使用函数 SUM 聚合转换后的列,我会收到此错误:

SAP DBTech JDBC:[339]:无效数字:函数 to_int() 中的数字字符串“无效”

这是我的示例 SQL 查询:

select SUM(PARTICIPANT)
from (
select TO_INTEGER(STUDENT) as PARTICIPANT
from MyTable)

列 STUDENT 是 MyTable 中的 varchar(50)

我做错了什么?

提前致谢

4

2 回答 2

1

在没有看到您的 Column 值的情况下,您似乎正在尝试将值列表末尾的数字序列转换为数字,并且分隔它的空格会引发此错误。但根据您提供给我们的信息,它可能发生在任何领域。

例如:

Create table Table1 (tel_number number);
Insert into Table1 Values ('0419 853 694');

以上给你一个

无效号码

于 2016-06-21T10:54:34.163 回答
0

如果您在收到此错误消息时尝试将字符串列值作为整数给出,请检查 Filter/where 子句。我在 HANA - 计算视图 - SQL 脚本中写道,在 where 子句 Bukrs(公司代码)= 1000 之后,我更改了 Bukrs = '1000'。那么这个问题就解决了。

于 2017-11-21T07:38:52.870 回答