假设我们有这个查询:
match (n:Intersection) WHERE NOT (n)<-[:RTREE_REFERENCE]-() RETURN n
它返回节点,但我们如何将其作为返回的所有节点的 LIST 返回?即[node1,node2,node3]。我正在使用的过程需要一个输入参数,该参数需要采用集合/列表格式
match (n:Intersection) WHERE NOT (n)<-[:RTREE_REFERENCE]-() with n CALL spatial.addNodes("network",n) yield node return node
Type mismatch: expected Collection<Node> but was Node
答案 0 :(得分:4)
如果您将查询更改为:
MATCH (n:Intersection)
WHERE NOT (n)<-[:RTREE_REFERENCE]-()
RETURN COLLECT(n)
然后它将返回节点列表。
所以第二个查询看起来像这样:
MATCH (n:Intersection)
WHERE NOT (n)<-[:RTREE_REFERENCE]-()
WITH COLLECT(n) AS nodesList
CALL spatial.addNodes("network", nodesList) YIELD node
RETURN node