【发布时间】:2016-05-19 07:20:49
【问题描述】:
我正在使用 Cassandra 2.2,但我遇到了用户定义函数的问题。
我想创建一个函数,将表的整数列作为参数,将另一个整数作为用户输入,并将这两个值相乘,如下所示:
创建或替换函数 testFunc (val int, input int)
CALLED ON NULL INPUT RETURNS int
LANGUAGE java AS 'return val * input;';
我可以像这样在两个整数列上执行函数
从 my_table 中选择 testFunc(int_column, another_int_column);
它正在工作,但是当我尝试使用以下用户输入执行它时:
从 my_table 中选择 testFunc(int_column, 3);
我收到以下异常:
SyntaxException: ErrorMessage code=2000 [CQL 查询中的语法错误] message="line 1:22 no possible alternative at input '3' (select testFunc(year, [3]...)"
是否有可能实现我正在尝试的目标,或者我应该找到另一种方法来做到这一点?
【问题讨论】: