获取两个节点neo4j之间的中间节点

获取两个节点neo4j之间的中间节点,neo4j,cypher,Neo4j,Cypher,我需要在两个节点之间找到公共节点。例如,从A->B->C A=节点1 B=节点2 C=节点3 A、 B和C具有公共属性(用户id、全名),关系属性为KNOWS。节点索引是用户id 与以下内容相关的节点: A[:知道]B和B[:知道]C 我有A和C节点id。我想找到B节点id。如何使用Cypher或neo4jphp实现这一点?我真的希望看到您自己编写的内容,但我想有时这太费劲了 START a=node(1) MATCH (a)-[:KNOWS]->(b)-[:KNOWS]->(c)

我需要在两个节点之间找到公共节点。例如,从
A->B->C

A=节点1
B=节点2
C=节点3

A、 B和C具有公共属性(用户id、全名),关系属性为KNOWS。节点索引是用户id

与以下内容相关的节点: A[:知道]B和B[:知道]C


我有A和C节点id。我想找到B节点id。如何使用Cypher或neo4jphp实现这一点?

我真的希望看到您自己编写的内容,但我想有时这太费劲了

START a=node(1)
MATCH (a)-[:KNOWS]->(b)-[:KNOWS]->(c)
WHERE a.user_id = ... (Explanation on what exactly should be done here was lacking)
RETURN b

我已经试过了,效果非常好<代码>开始a=节点(5),c=节点(46)匹配(a)(c)将nodeX返回为b@JobaerShuman我很高兴它对我有帮助!别忘了接受一个解决了你问题的答案(投票下的绿色小支票)。对java API有什么想法吗?@FranciscoSalvador Neo4j正试图摆脱标准java SDK,可能值得转向cypher查询,但这些肯定可以通过java实现。