столбец даты, который является типом текста в Cassandra.so мне нужна UDF для преобразования этого текста в метку времени, чтобы я мог запросить по этому столбцу - PullRequest
0 голосов
/ 21 декабря 2018

Я написал код наподобие belo, но получаю ошибку, как показано ниже: -

InvalidRequest: Ошибка сервера: code = 2200 [Invalid query] message = "Ошибка компиляции исходного кода Java: Строка 1: Java.util.String не может быть разрешен для типа Строка 1: синтаксическая ошибка для токена «Дата», @ ожидается Строка 4: SimpleDateFormat не может быть разрешен для типа

 CREATE FUNCTION saumya.text2dt ( input text )
 RETURNS NULL ON NULL INPUT
 RETURNS timestamp 
 LANGUAGE java
 AS $$
java.text.ParseException
java.text.SimpleDateFormat
java.util.Date
String ms = input;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd   HH:mm:ss.SSS");
Date date = sdf.parse(ms);
return sdf.format(date);        
$$

1 Ответ

0 голосов
/ 21 декабря 2018

Создать синтаксис UDF:

 CREATE FUNCTION text2dt ( input text )
 RETURNS NULL ON NULL INPUT
 RETURNS timestamp 
 LANGUAGE java
 AS '
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd   HH:mm:ss.SSS");
try{
java.util.Date date = sdf.parse(input);
return date;  
}catch(Exception e){
return null;
}      
';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...