我有一个现有节点的数据库,并希望从CSV文件添加其他关系,如下所示:
stype,sname,sver,rel,dtype,dname,dver
A,aname,1.1,FRIEND,A,bname,2.2
B,bbb,1.2,ENEMY,A,bname,2.2
我的LOAD CSV看起来像这样。目的是匹配两个现有节点,然后与CSV中的值链接:
LOAD CSV WITH HEADERS FROM "file:///c:/workspace/neo/demo.csv" as line
MATCH (s:line.stype {name:line.sname,version:line.sver}),
(d:line.dtype {name:line.dname,version:line.dver})
CREATE (s)-[:line.rel}]->(d)
RETURN COUNT(*);
当我尝试设置标签或关系类型时出现此错误:
Invalid input '.': expected an identifier character, whitespace, NodeLabel, a property map, ')' or a relationship pattern (line 2, column 14)
"MATCH (s:line.stype {name:line.sname,version:line.sver}),"
支持吗?
答案 0 :(得分:0)
不支持参数化良好的标签。
在您的情况下,您可以添加一个WHERE语句,指定所需MATCH的标签:
MATCH (s {name:line.sname,version:line.sver}), (d {name:line.dname,version:line.dver})
WHERE line.stype IN labels(s) AND line.dtype IN labels(d)
干杯,
克里斯