Gra*_*eon 2 foreach neo4j cypher
我有一个使用此创建的 rel 集合
MATCH (u:user)-[i:INTEREST]->(t:term)
WITH COLLECT([i,t]) AS its
RETURN its
Run Code Online (Sandbox Code Playgroud)
它正确返回 rels 和节点的数组。另请参阅http://console.neo4j.org/r/cw7saq
现在我想设置关系的属性,但不知道如何访问数组中的 rels。试过这个,
MATCH (u:user)-[i:INTEREST]->(t:term)
WITH COLLECT([i,t]) AS its
FOREACH (it IN its |
SET it[0].testprop=89292" )
Run Code Online (Sandbox Code Playgroud)
但它返回一个错误
Error: Invalid input '[': expected an identifier character, node labels, a property map, a relationship pattern, '(', '.' or '=' (line 4, column 16)
" SET it[0].testprop=89292" )"
Run Code Online (Sandbox Code Playgroud)
有人知道执行此操作的正确语法是什么吗?
任何遇到像OP提到的子集错误的人都可以用括号解决它:
MATCH (u:user)-[i:INTEREST]->(t:term)
WITH COLLECT([i,t]) AS its
FOREACH (it IN its |
SET (it[0]).testprop=89292" )
Run Code Online (Sandbox Code Playgroud)