如何通过在neo4j中导入csv文件来为现有节点创建关系?

时间:2014-10-09 13:10:02

标签: neo4j cypher graph-databases nosql

假设我在neo4j中创建了[a],[b],[c],[d]个节点。如何通过导入csv数据在这些节点之间建立关系。

csv data:

id,fromNode,toNode,typeOfRelation
1,a,b,KNOWs
2,b,c,FOLLOWS
3,d,a,KNOWS
....

1 个答案:

答案 0 :(得分:1)

如果您的节点已经在图表中,我会这样做。

CREATE INDEX ON :Label(name);

LOAD CSV WITH HEADERS FROM "file:///<PathToYourCSV>" as input
MATCH (from:Label  {name: input.fromNode}), (to:Label {name: input.toNode})
CREATE (from)-[:RELATION { type: input.typeOfRelation }]->(to);

要查询它,您可以使用

MATCH (n:Label {name: 'b'}), 
(n)-[rel:RELATION]->(follower)
where rel.type = 'FOLLOWS'
return n, follower

帕特里克