【发布时间】:2012-06-08 11:33:12
【问题描述】:
我想在第二个查询中使用第一个查询的结果。我不确定如何在 Cypher 中执行此操作?
当前代码,
START user1=node:USER_INDEX(USER_INDEX = "userA")
MATCH user1-[r1:ACCESSED]->docid1<-[r2:ACCESSED]-user2, user2-[r3:ACCESSED]->docid2
WHERE r2.Topic=r3.Topic
RETURN distinct docid2.Label;
我想在 WHERE 子句中检查相同 docid2 节点集的不同条件,并根据日期字段累积结果并执行 order by。 我无法在同一个交易中提供多个匹配和返回。 那是当我试图拥有两个不同的密码脚本并将它们组合到第三个查询中时。这在密码中可能吗? 或者是否有任何选项可以编写自定义函数并调用它们? 我们是否像 Stored Gremlin 脚本一样存储了 Cypher 脚本?
【问题讨论】:
-
您可以查看 WITH ,它允许您将查询结果(也聚合)从一个查询部分传送到另一个查询部分,因此您可以使用两个 where 子句执行例如 HAVING。见:docs.neo4j.org/chunked/snapshot/query-with.html