【发布时间】:2016-02-23 19:17:37
【问题描述】:
我想在 Neo4j 中重新创建整个节点链和关系。
我知道我可以用p= 保存路径,但CREATE 不接受。
MATCH p=(:Person)-[*]->(:Dog) CREATE p
有没有办法做到这一点?
【问题讨论】:
-
您可以尝试使用
nodes(p)和relationships(p) -
您能解释一下为什么要在同一个数据库中创建一组路径的完全相同的副本吗?这通常是您想要避免的。如果我们知道您实际上想要完成什么,也许我们可以提出更好的方法。
-
@cybersam 太真实了,人们通常希望避免这种情况。在我的情况下没关系,我正在填充样本数据,所以可以有重复。还有其他填充样本数据的方法,但这是一个理论问题。我有点惊讶我尝试的命令不起作用。 “不可能”的答案是完全可以接受的,或者如果有办法做到这一点,知道会很有趣。无论哪种方式,答案都应该伴随着“警告:你可能不想这样做”,正如你所提到的。
-
@cybersam 我有一个用例,我想重复使用一组节点作为“模板”(并且有多个模板),这些节点被复制并附加到其他地方。现在我正在使用 py2neo 以编程方式创建它们并从 cypher 脚本文件中读取 CREATE 命令,但是完全在 db 上操作会很好。