首页 文章

使用Node csv和Relationship csv创建关系

提问于
浏览
2

我正在使用Neo4j 2.2.0 . 我有两个csv文件 . 第一个csv是所有节点的不同列表,例如朋友节点 . 第二个csv是朋友之间关系的列表 . 我正在使用浏览器加载数据并创建关系 . 但是,在创建关系时,它会为Friends创建新节点,而不是使用现有节点 .

Cypher用于加载朋友 -

USING PERIODIC COMMIT 10000
   LOAD CSV WITH HEADERS FROM "http://localhost/csv/Friends.csv" AS row
   CREATE (:Friends {Friend_Name: row.Friend_Name});

Cypher用于加载关系 -

USING PERIODIC COMMIT 10000
   LOAD CSV WITH HEADERS FROM "http://localhost/csv/Relationships.csv" AS row
   MATCH (Friend1:Friends {Friend_Name: row.Friend_Name})
   MATCH (Friend2:Relationships {Friend_Name: row.Friend_Name})
   CREATE (Friend1)-[:Friend_With]->(Friend2);

请有人指出我正确的方向 .

1 回答

  • 2

    这是正常的,在第二个LOAD CSV语句中,您有以下行:

    MATCH (Friend2:Relationships {Friend_Name: row.Friend_Name})
    

    您正在使用Relationships标签,这是错误的 . 您需要更改为:

    MATCH (Friend2:Friends {Friend_Name: row.Friend_Name})
    

    另外,朋友们向我看一个不合适的标签,一个人物标签会更准确,因为友情实际上是你的关系告诉你的关于图表的信息

相关问题