在Neo4j中WITH做了什么

时间:2012-05-06 00:07:35

标签: neo4j

我无法理解doc

中的这个例子
START david=node(1)
MATCH david--otherPerson-->()
WITH otherPerson, count(*) as foaf
WHERE foaf > 1
RETURN otherPerson

在WITH行中otherPerson和count(*)做了什么?

1 个答案:

答案 0 :(得分:3)

你在这里看到的是两个加入的查询。 使用act作为第一个查询的返回值,并作为第二个查询的“start”。 它设置为传递的上下文的一部分。

normally you would have
START david=node(1)
MATCH david--otherPerson-->()
RETURN otherPerson, count(*) as foaf

然后在您的调用代码中进行过滤。

with with you你可以直接在cypher中启动下一个查询,它只能看到with部分中声明的内容, 在这种情况下:otherPerson和foaf第一个查询的其他标识符和数据不再可用。