Reputation: 1461
How can I get the length of a string in Cassandra? There don't seem to be any built-in functions to do this for me.
Looking for something like this:
SELECT size(myStr) FROM myTable WHERE ...
I know this may be possible using user-defined functions, but I'm not sure if I have the appropriate permissions to be able to create functions.
Upvotes: 6
Views: 7001
Reputation: 2280
There is no inbuilt function for it but you can create UDF
in Cassandra to find the length of the String column and then use that UDF
in your query. Before creating this UDF make sure you have enabled udf property in your cassandra.yml
file i.e. enable_user_defined_functions: true
CREATE FUNCTION IF NOT EXISTS len (input text)
CALLED ON NULL INPUT
RETURNS int
LANGUAGE java AS '
return input.length();';
Then you can use it in your query as,
cqlsh:test> SELECT len(event_data) as length from event where id = 1;
And you should get output,
length
--------
14
Upvotes: 5
Reputation: 16400
It is possible to make a UDF to do it, but there is none built in cassandra.
Upvotes: 0