apoc.rel.id

详细信息

语法

apoc.rel.id(rel)

描述

返回给定虚拟 RELATIONSHIP(关系)的 ID。

参数

名称

类型

描述

关系

RELATIONSHIP

从中获取 ID 的关系。

返回

INTEGER(整数)

用法示例

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

CREATE (s1:Student {name: 'Priya'})
CREATE (s2:Student {name: 'Joachim'})
CREATE (s3:Student {name: 'Dominic'})
CREATE (s4:Student {name: 'Amir'})
CREATE (s5:Student {name: 'Natasha'})
CREATE (s6:Student {name: 'Elena'})

CREATE (t1:TestScore {score: 87})
CREATE (t2:TestScore {score: 90})
CREATE (t3:TestScore {score: 78})
CREATE (t4:TestScore {score: 84})
CREATE (t5:TestScore {score: 76})
CREATE (t6:TestScore {score: 92})

CREATE (a:Level {level: 'beginner'})
CREATE (b:Level {level: 'intermediate'})
CREATE (c:Level {level: 'advanced'})

MERGE (s1)-[:HAS]->(t1)-[:ASSIGNED_TO]->(b)
MERGE (s2)-[:HAS]->(t2)-[:ASSIGNED_TO]->(c)
MERGE (s3)-[:HAS]->(t3)-[:ASSIGNED_TO]->(a)
MERGE (s4)-[:HAS]->(t4)-[:ASSIGNED_TO]->(b)
MERGE (s5)-[:HAS]->(t5)-[:ASSIGNED_TO]->(a)
MERGE (s6)-[:HAS]->(t6)-[:ASSIGNED_TO]->(c);

如果我们创建学生之间的虚拟关系以查看哪些学生对课程材料的理解程度相同,我们可以使用 apoc.rel.id 来返回这些虚拟关系的关系 ID。

apoc.create.vRelationship 过程
MATCH (s1:Student)-[:HAS]->(:TestScore)-[:ASSIGNED_TO]->(l:Level)<-[:ASSIGNED_TO]-(:TestScore)<-[:HAS]-(s2:Student)
CALL apoc.create.vRelationship(s1,'SIMILAR_LEVEL',{level: l.level},s2)
YIELD rel
RETURN rel, apoc.rel.id(rel) AS relId;
结果
关系 relId

[:SIMILAR_LEVEL {level: "intermediate"}]

-1

[:SIMILAR_LEVEL {level: "advanced"}]

-2

[:SIMILAR_LEVEL {level: "beginner"}]

-3

[:SIMILAR_LEVEL {level: "intermediate"}]

-4

[:SIMILAR_LEVEL {level: "beginner"}]

-5

[:SIMILAR_LEVEL {level: "advanced"}]

-6