postgresql 有没有一种方法可以在AGE中查询单个列中的顶点和边?

kzipqqlq  于 2023-06-29  发布在  PostgreSQL
关注(0)|答案(3)|浏览(160)

假设我想把所有的顶点和边(以及路径)都列在一列中,按它们的类型排序,这可能吗?
文档没有提到任何关于这一点,即使它提到了边,路径,顶点,Map在orderability
什么可能是实现这一点的查询?
编辑:这是我正在寻找的一个输出

它清楚地显示了路径、边和顶点之间的可排序性,然而,这只起作用,因为它们以不同顶点的属性的形式存储。
是否可以在一列中查询所有路径、顶点和边?

jjhzyzn0

jjhzyzn01#

要获取单个列中的顶点、边,可以尝试以下操作:

SELECT * FROM cypher('graph', $$
MATCH (n)-[e]->(m)
RETURN [n, e, m]
$$) AS (result agtype);

这将返回一个由开始顶点,边,结束顶点组成的列表
如果您需要一个路径,那么下面的查询将起作用

SELECT * FROM cypher('graph', $$
MATCH p = (n)-[e]->(m)
RETURN p        
$$) AS (result agtype);
3gtaxfhh

3gtaxfhh2#

你可以取所有顶点和边的并集。添加一个额外的列,以说明它是顶点还是边。然后可以使用额外的列来订购。

pftdvrlh

pftdvrlh3#

您可以简单地查询路径,因为路径包含顶点和它们之间的边。这可以通过以下查询来实现:

SELECT * FROM cypher('graphname', $$
MATCH p= (n1)-[r]->(n2)
RETURN p
$$) AS (outcome agtype);

相关问题