0

我怎样才能得到关系的结束节点。例如:

rels = graph_db.match(start_node=user, rel_type="is_post_owner")

那么如何获取起始节点用户的所有结束节点。

问候,塞缪尔

4

2 回答 2

1

像这样:

rels = graph_db.match(start_node=user, rel_type="is_post_owner")
end_nodes = [rel.end_node for rel in rels]

match从该方法返回的每个关系都是一个标准的关系对象,可以这样使用。

于 2013-05-13T14:11:16.113 回答
0

你可以使用密码

START a=node(id) //replace with the id of the node you want to start 
MATCH p=a-[:is_post_owner*..]->x //get all the paths to all nodes with rel:is_post_owner
WHERE NOT(x-->()) //exclude nodes with Direction Out Relationships "end nodes"
RETURN x //get the end nodes

这样,返回的节点将成为图形的叶节点,与方向没有其他关系。

正如 Thomas 所说,他是绝对正确的,您应该在 where 子句中包含关系类型。这样,您只能获取该关系的结束节点,并且返回的节点可以具有其他具有方向输出的关系(不是叶节点),但是它们是请求关系的结束节点

 START a=node(id) 
 MATCH p=a-[r:is_post_owner*..]->x 
 WHERE NOT(x-->(r)) 
 RETURN x 
于 2013-05-13T09:52:43.387 回答