ORDER BY子查询的UNION结果

时间:2017-01-03 17:20:07

标签: neo4j cypher

我想计算多个子查询的UNION,并使用ORDER BY对结果进行排序。

所以我想运行这个查询(用伪Cypher编写):

(RETURN 2 AS x
UNION
RETURN 1 AS x)
ORDER BY x

得到以下结果:

╒═══╕
│x  │
╞═══╡
│1  │
├───┤
│2  │
└───┘

有办法做到这一点吗?由于ORDER BY始终与单个WITH / RETURN条款相关联,因此我认为这不可能,我也不会想到一个好的解决方法。

1 个答案:

答案 0 :(得分:7)

Cypher语言尚不支持Post-Union processing

但是,作为一种解决方法,您应该能够使用APOC过程apoc.cypher.run在"子例程"中执行UNION操作,然后在主要的UNION处理中执行Cypher查询。例如:

sheet['F{}',format(i)] ='E{}*37.5'.format(i)