Я использую Cassandra 2.2, и у меня проблема с пользовательскими функциями.
Я хочу создать функцию, которая принимает в качестве параметра целочисленный столбец таблицы и другое целое число в качестве пользовательского ввода и умножает два значения следующим образом:
СОЗДАТЬ ИЛИ ЗАМЕНИТЬ ФУНКЦИЮ testFunc (val int, input int)
ВЫЗЫВАЕТСЯ ПРИ ВОЗВРАЩЕНИИ НУЛЕВОГО ВВОДА int
ЯЗЫК java AS 'return val * input;';
Я могу выполнить функцию для двух целочисленных столбцов, например
выберите testFunc (int_column, another_int_column) из my_table;
и он работает, но когда я пытаюсь выполнить его с помощью пользовательского ввода, например:
выберите testFunc (int_column, 3) из my_table;
я получаю следующее исключение:
SyntaxException: ErrorMessage code = 2000 [Синтаксическая ошибка в запросе CQL] сообщение = строка 1:22 нет жизнеспособной альтернативы на входе '3' (выберите testFunc (год, [3] ...)
Можно ли добиться того, что я пытаюсь сделать, или я должен найти другой способ сделать это?