有没有办法用Hazelcast PredicateBuilder用like子句查询数据?

时间:2019-05-17 09:02:08

标签: java hazelcast

我正在使用Hazelcast PredicateBuilder(https://docs.hazelcast.org/docs/3.6-EA3/javadoc/com/hazelcast/query/PredicateBuilder.html#filter(com.hazelcast.query.impl.QueryContext))和EntryObject(https://docs.hazelcast.org/docs/3.6-EA3/javadoc/com/hazelcast/query/EntryObject.html)查询数据存储。

有没有一种方法可以组合这些功能来获得LIKE子句?例如,如果我有动物表,它的id和name字段像这样Animal(id, name)并有两行-Animal(1, grey rabbit)Animal(2, blue rabbit),我想得到这样的查询:

SELECT id FROM animal WHERE name LIKE '%rabbit%'

1 个答案:

答案 0 :(得分:1)

您可以使用SqlPredicate,类似这样:

map.values(new SqlPredicate("name like '%rabbit%');

map.values(new SqlPredicate("__key.name like '%rabbit%');

如果您想查询密钥。

记住使用“赞”时的所有性能问题。