Neo4j导入csv制作特定图形
问题描述:
我是Neo4j的新手,在Neo4j上做了一些练习。Neo4j导入csv制作特定图形
我有头csv文件:
product,material
aa,bb
aa,cc
cc,bb
dd,aa
我想将它导入到N4j和创造“从” 已命名的关系,并希望它的图形是这样的:graph 起初,我认为这是很容易,我努力争取2ds,放弃... 我需要帮助。 我的代码是在这里:
load csv with headers from"files:\\test.csv" as file
merge (p:product {id:file.product})
merge (m:material {id:file.material})
create (p)-[:from]->(m)
,然后将结果是在这里:graph2
所以,
1.How可我做 “AA” 创造只有一个节点?
2.如何让节点显示“aa”“bb”...而不是数字?
3.btw,在n4j手册中,“导入工具”和“加载csv”有什么区别?
答
问题是您在创建查询中使用了不同的标签。
CSV中的第2行创建了一个ID为'cc'的素材节点。 虽然您在第3行中具有'cc'作为您的ID,但它适用于:产品节点。在第3行执行时,没有这样的产品节点:id为'cc'(有一个:带有该id的材料节点,但由于标签不同,匹配失败),因此创建了一个新的product节点。
同样与'aa'。 CSV中的第1行和第2行合并a:产品节点'aa',但第4行中的id用于:材料节点。再次,标签是不同的,所以它不会重用您以前创建的节点。
要实现您所需的图形,如果所有的id都指向同一个节点,那么合并中的标签也必须相同。