apoc.algo.cover

此过程已弃用。请改用 Cypher 的 IN 谓词。

详细信息

语法

apoc.algo.cover(nodes) :: (rel)

描述

返回连接给定一组 NODE(节点)的所有 RELATIONSHIP(关系)。

输入参数

名称

类型

描述

节点

ANY

用于查找连接关系的节点集合。

返回参数

名称

类型

描述

关系

RELATIONSHIP

连接到给定节点的关系。

使用示例

以下示例演示了如何使用 Cypher 和 APOC 来返回连接给定一组节点的所有关系。

本节中的示例基于以下示例图

CREATE (Keanu:Person {name:'Keanu Reeves', born:1964})
CREATE (Carrie:Person {name:'Carrie-Anne Moss', born:1967})
CREATE (TomH:Person {name:'Tom Hanks', born:1956})

CREATE (Keanu)-[:KNOWS]->(Carrie);
CREATE (Tom)-[:KNOWS]->(Carrie);
apoc.algo.cover
WITH COLLECT {
  MATCH (person:Person)
  WHERE person.name IN ["Keanu Reeves", "Carrie-Anne Moss"]
  RETURN person
} AS people
CALL apoc.algo.cover(people)
YIELD rel
RETURN  startNode(rel) AS startNode, rel, endNode(rel) AS endNode
Cypher 中的匹配
WITH COLLECT {
  MATCH (person:Person)
  WHERE person.name IN ["Keanu Reeves", "Carrie-Anne Moss"]
  RETURN person
} AS people
UNWIND people AS person
MATCH (person)-[rel]->(otherPerson)
WHERE otherPerson IN people
RETURN person AS startNode, rel, otherPerson AS endNode
结果
startNode 关系 endNode

(:Person {name: "Keanu Reeves", born: 1964})

[:KNOWS]

(:Person {name: "Carrie-Anne Moss", born: 1967})