检索所有节点和关系的ID

时间:2016-07-13 19:20:42

标签: neo4j

我想检索存储在Neo4j数据库中的节点和关系。

这可以使用两个查询轻松完成:

match (x) return id(x)
match ()-[r]-() return distinct(id(r))

使用单个查询执行此操作的方法如下:

match (x) optional match (x)-[r]-() return id(x), id(r)

但是,这会返回x和r的ID对,例如:(123, 11), (100, null)等等。

有没有办法在不检索这种有序对的情况下检索所有ID?

1 个答案:

答案 0 :(得分:3)

您可以使用两个集合和一个WITH:

MATCH (n) WITH collect(id(n)) as nodeIds
MATCH ()-[r]-() RETURN collect(distinct id(r)) as relIds, nodeIds