Neo4j 当数据存储在表中时,为了能够在不同行的公共值之间创建关系,我应该编写什么密码?

Neo4j 当数据存储在表中时,为了能够在不同行的公共值之间创建关系,我应该编写什么密码?,neo4j,Neo4j,在本例中,我希望: “名称”必须是单个节点 “活动”必须是单个节点 “类”是单个节点 系统将自动将两个名称连接到同一类节点“JUNIOR” 我基本上希望系统将不同的名称连接到它们共享的节点 我假设您的数据存储在导入文件夹中名为foo.CSV的CSV文件中,其内容如下所示: id,name,activity,class 1,AB,Dance,Junior 2,CD,Biking,Junior 如果这是真的,那么下面是一个示例Cypher语句,用于读取该文件并创建相应的节点和关系(使用MERGE以

在本例中,我希望:

  • “名称”必须是单个节点

  • “活动”必须是单个节点

  • “类”是单个节点
  • 系统将自动将两个名称连接到同一类节点“JUNIOR”

  • 我基本上希望系统将不同的名称连接到它们共享的节点

    我假设您的数据存储在导入文件夹中名为
    foo.CSV
    的CSV文件中,其内容如下所示:

    id,name,activity,class
    1,AB,Dance,Junior
    2,CD,Biking,Junior
    
    如果这是真的,那么下面是一个示例Cypher语句,用于读取该文件并创建相应的节点和关系(使用
    MERGE
    以避免创建重复项):

    LOAD CSV WITH HEADERS FROM 'file:///foo.csv' AS row
    MERGE (p:Person {name: row.name, id: row.id})
    MERGE (a:Activity {name: row.activity})
    MERGE (c:Class {name: row.class})
    MERGE (p)-[:PARTICIPATES_IN]->(a)
    MERGE (p)-[:IN_SCHOOL_YEAR]->(c)