如何展开多个集合

use*_*165 2 neo4j cypher

我的查询返回表单的行:

node | {node1, node2, node3} | {float1, float2, float3}
Run Code Online (Sandbox Code Playgroud)

我想要解开两个总是具有相同数量的元素的集合,这样我将获得表单的行:

node | node1 | float1
node | node2 | float2
node | node3 | float3
Run Code Online (Sandbox Code Playgroud)

我试图解开两个集合,但这将返回元素的所有排列,所以在这种情况下9行.

有没有一种简单的方法来实现这个使用cypher?

Dav*_*ett 5

这是一个例子.它获得了一个集合Nodes和一个集合Floats.然后它迭代集合的大小并以表格形式转储它们.不注意排序和假设它们是相同大小的集合.

MATCH (m:Top)-->(n:Float)
WITH m, collect(n.name) AS float
MATCH (m)-->(n:Node)
WITH m, float, collect(n.name) AS node, range(0,size(float)-1,1) AS coll_size
WHERE size(float) = size(node)
UNWIND coll_size AS idx
RETURN m.name, float[idx], node[idx]
Run Code Online (Sandbox Code Playgroud)

这是输出的示例.

在此输入图像描述