如何使用属性信息生成关系[Node4j]

时间:2015-02-09 12:23:58

标签: neo4j cypher

我导入了一个CSV,其中每个节点包含3列。 id,parent_id和title。这是我在mysql中的一个简单的树结构。现在我需要在考虑parent_id数据的情况下创建这些节点之间的关系。因此每个节点到节点将有2个关系作为父和子。我对node4j和建议真的很新吗?

我试过跟随,但没有运气

MATCH (b:Branch {id}), (bb:Branch {parent_id})
CREATE (b)-[:PARENT]->(bb)

1 个答案:

答案 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