如何在cypher链表的中间插入节点



我在cypher中使用链表模式来表示一些数据。

(node1)-[:NEXT]->(node2)-[:NEXT]->(node3)

问题是我如何在链表节点之间插入newNode。所以我得到

例如(node1)-[:NEXT]->(newNode)-[:NEXT]->(node2)-[:NEXT]->(node3)

有一些角落的情况,newNode可以在列表的末尾或开始,解决方案需要考虑它们。

是否有一个优雅的结束简单的方法来做到这一点,而不需要多个apod .do.when调用?

您所需要做的就是在新节点中查找,然后删除旧的关系,例如…(我假设这里有一些属性)

MATCH (n1:Node {name:'node1'})-[r:NEXT]->(n2)
CREATE (n1)-[:NEXT]->(:Node {name: 'new Node'})-[:NEXT]->(n2)
DELETE r

相关内容

  • 没有找到相关文章

最新更新