csv - 使用节点 csv 和关系 csv 创建关系

标签 csv neo4j cypher

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

用于加载好友的密码 -

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

用于加载关系的密码-

   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);

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

最佳答案

这是正常的,在你的第二个 LOAD CSV 语句中,你有这一行:

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

您使用的是关系标签,这是错误的。您需要更改为:

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

此外, friend 们认为我使用了一个不合适的标签,“人”标签会更准确,因为友谊实际上是您的关系在图表中告诉您的信息

关于csv - 使用节点 csv 和关系 csv 创建关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29728761/

相关文章:

python - 以文本模式读取文件但也在 Python 中计算原始字节数?

java - 在 Neo4j 中使用 cypher 加速关系和节点创建

neo4j - 尝试对我的图表进行单个 Neo4j Cypher 查询

python - 尝试解析日志文件并使用 python 中的表创建 CVS 报告。由于某种原因,代码返回空表

c# - 如何创建一个 csv 并附加到电子邮件并在 C# 中发送

java - Neo4j:无法实例化 BatchInserter

neo4j - 运行 Neo4J 实例的实际最小 RAM 是多少

java - Neo4j SDN 预填充实体

neo4j - 如何使用 Cypher 在 Neo4j 中实现 Dijkstra 算法

python - 在跳过第一行并使用第二行作为 pandas 中符号的原始刻度数据的标题时,无法读取 csv