Neo4j:基于节点属性和位置选择单个节点的查询方法是什么?

3
我在使用Neo4j查询机制时遇到了困难(包括Gremlin、Cypher、遍历和内置算法),而不知道何时应该使用哪种。例如,我想选择整个图中:

  • 边数最多的单个节点
  • 距离4个起始节点中的一个一定路径长度内的节点
  • 某个属性具有特定值的节点

我正在使用Python的neo4jrestclient,可以分别使用Gremlin / Cypher脚本和遍历来执行某些要求(例如使用Gremlin计算出入度),但是缺乏如何将它们组合起来的大局观。

有什么建议吗?


但问题是出在 neo4jrestclient 还是查询本身? - Javier de la Rosa
客户端运行良好,我更在意使用哪种查询机制。 - mhermans
1
它主要取决于您的偏好,遍历是最快的,Cypher更方便。但是需要注意的是,您想要执行的一些操作是全局图查询,这不是Neo4j的最佳用例。 - Michael Hunger
你正在为该属性建立索引吗? - ERR0
1个回答

1

在Cypher中,它看起来像这样:

start n=node:index(indicator="startnode-value")
match n-[:REL*..10]->target
where target.prop = "value"
return target

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接