Neo4J - 查找 2 个节点的数组 属性 中的值是否匹配

Neo4J - find if value in array property of 2 nodes matches

嗨,我有一个用例,我有一个节点 属性 是数组。

*

Node({name:'a', colors:['red','green','blue']})
Node({node:'b',colors:['blue','black','red']})

*

现在想知道2个节点的颜色之间的匹配值是多少property.I应该可以得到匹配值,以便在查询中进一步传递处理

MATCH (a:Node {name:'a'})
MATCH (b:Node {name:'b'})
RETURN filter(x IN a.colors WHERE x IN b.colors);

如果您想继续查询:

MATCH (a:Node {name:'a'})
MATCH (b:Node {name:'b'})
WITH filter(x IN a.colors WHERE x IN b.colors) AS v
UNWIND v AS matchingVals
MATCH ...
...