我试图用neo4j创建一个链表,并且有一个根节点没有关系。这里是我试图创建伪暗号,但我不知道怎么样,或者即使是可能的:有条件地创建与密码的关系(neo4j)
START root=node(1), item=node(2)
MATCH root-[old?:LINK]->last
WHERE old IS NOT NULL
CREATE root-[:LINK]->item-[:LINK]->last
DELETE old
WHERE old IS NULL
CREATE root-[:LINK]->item
基本上我试图插入一个节点到列表中,如果列表中存在,并简单地否则创建第一个列表项目。显然你不能像上面所做的那样做多个WHERE
。任何想法如何用cypher实现这个想要的功能?
该文档通过首先在根节点上创建一个经常性的:LINK
关系来解决问题,但是我想在不这样做的情况下解决此问题(因为您需要为每个节点创建可能不需要的关系)。
我看着这两个文档。正如我在我的问题中所说的,链接列表示例要求您首先创建一个我想避免的经常性关系。 'MERGE'会很好,除了你不能执行一个有条件的'CREATE'。 –