Neo4j-密码反射关系查询

时间:2019-01-24 21:00:39

标签: neo4j cypher

如何使用Cypher编写自反关系查询?例如,我定义了一个名为follows的方向关系,该方向关系在User节点之间使用。我正在寻找的是找到彼此关注的用户

这是我尝试过的:

MATCH (x:User)-[:FOLLOWS]->(y:User), y-[:FOLLOWS]->x

有关Neo4j的详细信息:

版本:3.5.2

版本:Community

1 个答案:

答案 0 :(得分:0)

用于此的术语是关系,而不是属性,尽管是的,您可以寻找互相关注的用户。像这样:

MATCH (x:User)-[:FOLLOWS]->(y:User)
WHERE id(x) < id(y) AND (y)-[:FOLLOWS]->(x)
RETURN x, y

此处的id谓词是为了确保您只看到每个配对一次,而不会以相反的顺序看到相同配对的额外时间。