Neo4j 的节点和关系都是有 id 的,每个节点或关系都有一个整数 ID,在创建新节点或关系时,Neo4j 会自动设置 ID 的值。
在整个数据库中,节点的 ID 值是递增的和唯一的。
例如,创建一个节点:
CREATE( a: Person{ name: "L. XiaoTing", age: 21 } );
查询这个节点的 ID:
MATCH( a:Person )
WHERE a.name="L. XiaoTing"
RETURN a.name as name, id( a ) as id
返回结果:
"L. XiaoTing" 435
再创建一个节点:
CREATE( a: Person{ name: "C. LinPeng", age: 23 } );
为已有的两个节点创建关系:
MATCH ( a: Person ), ( b: Person )
WHERE a.name = "L. XiaoTing" AND b.name = "C. LinPeng"
CREATE ( a )-[ re: Knows ]->( b )
RETURN a, b;
查找结点关系的 id:
MATCH ( a: Person )-[ re ]-( b: Person )
where a.name = "L. XiaoTing" and b.name = "C. LinPeng"
RETURN id( re ), type( re ), re;
返回结果:
2399 "Knows" { }