简单记录通过 neo4j 及 Cypher 语言创建节点、关系并实现删除。 通过 Cypher 语言创建两个节点
create (n:Person { name: 'Andres', title: 'Developer' }) return n;
create (n:Person { name: 'Vic', title: 'Developer' }) return n;
通过下面的语句可以查询添加到 neo4j 数据库中的所有节点
match(n) return n;
如图:
注意到,当再次调用创建节点语句后会在数据库中重复添加节点,这两个节点的属性完全一样,但是是两个不相同的节点(存在不同的主键)。
create (n:Person { name: 'Vic', title: 'Developer' }) return n;
如图:
为了解决重复添加的问题,将 create 语句换为 merge 关键字,当重复添加时也不会出现节点重复的情况。
可以把这个关键字理解为将 create 和 match 合并到一起:如果不存在这个节点则会创建该节点,如果该节点已经存在则相当于 match 关键字。
merge (n:Person { name: 'Andres', title: 'Developer' }) return n;
为这个实体创建关系,这个我们添加了一个从 Vic 指向 Andres 的 friends关系。
MATCH (a:Person {name:'Vic'}),
(b:Person {name:'Andres'})
MERGE (a)-[:FRIENDS]->(b)
删除 Person 类节点以及它们之间的 friends 类关系。
match(a:Person)-[r:FRIENDS]-(b:Person)
delete a,r,b