我正在尝试使用Cypher Query在Neo4j中创建树结构。
我正在将数据从CSV加载到图表中。
数据结构是。它有两个列,即父和子
P1,C1
P1,C2
P1,C3
C1,SC1
C1,SC2
C2,SC3
C3,SC4
SC1,SSC1
SC2,SSC2
依旧......
此处P为第1级(父级,父级1),C为子级,SC为子级,SSC为子子级, 我想加载数据并从上到下创建树结构
我使用过此查询但未获取树结构。
LOAD CSV FROM 'file:C:/Users/ykumarx077781/Desktop/parent.csv' AS line
CREATE (Parent:Parent { Parent: line[0]} )
CREATE (Child:Child { Child: line[1]} )
CREATE (Parent)-[R:Parent_off]->(Child)
return R;
请帮我创建结构..
也使用MERGE但未获得
LOAD CSV FROM 'file:C:/Users/ykumarx077781/Desktop/parent.csv' AS line
MERGE (Parent:Parent { Parent: line[0]} )
MERGE (Child:Child { Child: line[1]} )
CREATE (Parent)-[R:Parent_off]->(Child)
return R;
答案 0 :(得分:1)
您必须对可能要重复使用的任何节点使用MERGE
,请参阅http://neo4j.com/docs/stable/cypherdoc-importing-csv-files-with-cypher.html,例如对于国家。
答案 1 :(得分:1)
尝试
创建索引:节点(id)
LOAD CSV FROM 'file:C:/Users/ykumarx077781/Desktop/parent.csv' AS line
MERGE (Parent:Node { id: line[0]} ) ON CREATE SET Parent:Parent
MERGE (Child:Node { id: line[1]} ) ON CREATE SET Child:Child
MERGE (Parent)-[R:Parent_off]->(Child)
return R;