我尝试使用Neo4j查询将数组属性压缩为一个数组。
Unflattened看起来像这样:
MATCH (Parent)-[:Has]-(c:Child)
RETURN c.myIntArray
我找到了reduce函数
RETURN REDUCE(output = [], s IN c.myIntArray | output + s) AS flat
我正在努力学习语法,我想我需要将所有数组传递给这个函数,上面只传递一行一个。
我的最终目标是生成一个不同的整数数组。
答案 0 :(得分:0)
在您发布此处时,您会立即找到答案。
我会把它放在这里以防其他人发现它有用。
MATCH (Parent)-[:Has]-(c:Child)
WHERE c.myIntArray IS NOT NULL
WITH COLLECT(c.myIntArray) AS myInts
WITH REDUCE(output = [], i IN myInts| output + i) AS flat
UNWIND flat AS all
RETURN DISTINCT all
虽然不是很快。