请问怎样高效率的不区分大小写的查询?
发布于 5 年前 作者 prolights 2591 次浏览 来自 问答

我只会用模糊匹配的方式来进行不区分大小写的查询。 match (e:Entity) where e.name=~"(?i)Baby Face" return e limit 10; 返回的结果 image.png image.png 但是这种方式耗时太高,业务完全无法接受,线上用的是在neo4j外部做一层逻辑来处理大小写的问题。 请问neo4j内部还有比较好的“不区分大小写”的查询方式吗? Thank you!

2 回复

例如电影数据的例子 MATCH (n) WHERE n.name =~ '(?i)TOM.*' RETURN n 在正则表达式前面加入(?i)之后,整个正则表达式将变成非大小写敏感

查询节点,可以考虑使用[call apoc.index.*]全文检索来查询响应非常快,neo4j支持lucene的API。

回到顶部