Neo4j扩展与查询性能调优
1. 扩展Cypher
1.1 用户自定义过程
用户自定义过程要么返回 void ,要么返回记录列表。这些记录需要声明为 public static final 类。以下是一个示例代码片段:
tx.success();
return result.list(r -> new StringResult(r.get(0).toString())).stream();
这里使用了 StringResult (属于APOC),通过Java 8的lambda表达式将Cypher查询返回的每一个 ln.lastName 转换为 StringResult 实例,并以流的形式返回。
1.2 自定义聚合器
在SQL中,常见的聚合器有 count 、 sum 、 min 和 max ,它们通常与 GROUP BY 指令一起使用。在Cypher中也可以使用聚合器,例如:
MATCH (p:Person)-[IS_NAMED]-(ln:LastName)
RETURN ln.lastName, count(p)
从
超级会员免费看
订阅专栏 解锁全文
1178

被折叠的 条评论
为什么被折叠?



