neo4j,如何使用两个不同的节点查询链

问题描述 投票:0回答:1

我有一个 Neo4j 图:(人)-[喜欢]-(水果)。我想使用[喜欢]和(水果)递归地找到人的人的人。

例如,

(约翰)-[喜欢]->(苹果)<-[like]-(Sam)->[喜欢]-(香蕉)<-[like]-(Jack)-[like]->(葡萄)<-[like]-(Lisa)...

如何使用 neo4j 查询这种关系?

neo4j cypher
1个回答
0
投票

如果您的路径中的序列始终是人、水果、人的重复......并且假设只有人喜欢水果而不是相反,您可以使用量化路径模式,如下所示:

MATCH p = ((:Person)-[:like]->(:Fruit)<-[:like]-(:Person))+
RETURN p
© www.soinside.com 2019 - 2024. All rights reserved.