我有一个带有列表属性的节点。该列表可以包含多个相似的值:
[“某物一”,“某物二”,“另一属性”,“某物三”]
我的目标是找到属性中具有一个或多个“某物...”值的所有节点,并将所有“某物...”属性替换为单个属性值“某物”。
[“某物”,“另一个财产”]
据我所知,有两个问题:
这个逻辑可能对你有用:
MATCH (n:Foo)
WHERE ANY(x IN n.list WHERE x STARTS WITH 'something')
SET n.list =
REDUCE(s = [], t IN n.list | CASE WHEN t STARTS WITH 'something' THEN s ELSE s + t END ) +
'something'
它使用 REDUCE 函数创建一个不包含任何“something...”元素的列表,然后将“something”附加到其中。