使用csv创建多个标签

时间:2014-06-26 07:25:07

标签: csv neo4j

我正在尝试加载csv文件来创建节点和标签。有没有办法同时添加多个标签? (我正在使用neo4j 2.1.1)

这是我的csv:

1,Test1,hardkey,button
2,Test2,touch,button
3,Test3,,screen

我试过了:

LOAD CSV FROM 'file:/Users/Claudia/Documents/nodes.csv' AS csvLine
FOREACH (n IN (CASE WHEN csvLine[2]='hardkey' THEN [1] ELSE[] END) |
    MERGE (p:hardkey {name: csvLine[1]})
)
FOREACH (n IN (CASE WHEN csvLine[2]='touch' THEN [1] ELSE[] END) |
    MERGE (p:touch {name: csvLine[1]})
)

这有效,但如何包含其他列(“按钮”和“屏幕”)?

非常感谢。

1 个答案:

答案 0 :(得分:1)

喜欢这个吗?

请参阅MERGE文档。

LOAD CSV FROM 'file:/Users/Claudia/Documents/nodes.csv' AS csvLine
FOREACH (n IN (CASE WHEN csvLine[2]='hardkey' THEN [1] ELSE[] END) |
    MERGE (p:hardkey {name: csvLine[1]}) ON CREATE SET p.what = csvLine[3]
)
FOREACH (n IN (CASE WHEN csvLine[2]='touch' THEN [1] ELSE[] END) |
    MERGE (p:touch {name: csvLine[1]}) ON CREATE SET p.what = csvLine[3]
)