从 CSV 文件将特定节点导入 Neo4J
Import particular nodes into Neo4J from CSV file
我正在做一些测试,以弄清楚如何最好地将数据从 CSV 文件导入 Neo4J。我在 Person.csv 文件中有以下数据(3 headers、Person_ID、名称和类型):
Person_ID Name Type
HUA001 Jaap Layperson
HUA002 Teems Priest
HUA003 Frank Layperson
我想导入特定类型的节点(例如 'Layperson')。
我考虑过使用 WHERE 语句创建一个 LOAD CSV 命令(见下文),但 Neo4J 并不特别喜欢那个 WHERE 语句。任何想法如何使这个(或具有类似结果的查询)工作?
LOAD CSV WITH HEADERS FROM 'file:///Person.csv' AS row
WHERE row.Type='Layperson'
CREATE (p:Person:Layperson {ID: row.Person_ID, name: row.Name})
您可以结合使用 WITH
和 WHERE
来过滤所需的行,并将过滤后的行传递给创建节点的下一个查询。
LOAD CSV WITH HEADERS FROM 'file:///Person.csv' AS row
WITH row
WHERE row.Type='Layperson'
CREATE (p:Person:Layperson {ID: row.Person_ID, name: row.Name})
我正在做一些测试,以弄清楚如何最好地将数据从 CSV 文件导入 Neo4J。我在 Person.csv 文件中有以下数据(3 headers、Person_ID、名称和类型):
Person_ID Name Type
HUA001 Jaap Layperson
HUA002 Teems Priest
HUA003 Frank Layperson
我想导入特定类型的节点(例如 'Layperson')。
我考虑过使用 WHERE 语句创建一个 LOAD CSV 命令(见下文),但 Neo4J 并不特别喜欢那个 WHERE 语句。任何想法如何使这个(或具有类似结果的查询)工作?
LOAD CSV WITH HEADERS FROM 'file:///Person.csv' AS row
WHERE row.Type='Layperson'
CREATE (p:Person:Layperson {ID: row.Person_ID, name: row.Name})
您可以结合使用 WITH
和 WHERE
来过滤所需的行,并将过滤后的行传递给创建节点的下一个查询。
LOAD CSV WITH HEADERS FROM 'file:///Person.csv' AS row
WITH row
WHERE row.Type='Layperson'
CREATE (p:Person:Layperson {ID: row.Person_ID, name: row.Name})