我导入了一个CSV,其中每个节点包含3列。 id,parent_id和title。这是我在mysql中的一个简单的树结构。现在我需要在考虑parent_id数据的情况下创建这些节点之间的关系。因此每个节点到节点将有2个关系作为父和子。我对node4j和建议真的很新吗?
我试过跟随,但没有运气
MATCH (b:Branch {id}), (bb:Branch {parent_id})
CREATE (b)-[:PARENT]->(bb)
答案 0 :(得分:2)
好像你的密码非常接近。您要做的第一件事是在标签id
的{{1}}和parent_id
属性上创建索引。
Branch
创建索引后,您希望将所有节点与标签CREATE INDEX ON :Branch(id)
CREATE INDEX ON :Branch(parent_id)
匹配(我会将其限制为具有特定值以开始确保您创建所需的内容)并且每个节点都找到通过匹配索引属性来对应父级。
Branch
一旦你在一个分支上证明了这一点并且你得到了你期望的结果,我会立刻为更多分支运行它。您仍然可以选择分批进行,具体取决于图表中的分支数量。
创建了所有MATCH (b:Branch), (bb:Branch)
WHERE b.id = ???
AND b.parent_id = bb.id
CREATE (b)-[:PARENT]->(bb)
关系后,您可以选择删除所有:PARENT
属性。
parent_id