Py2neo V3路径查询返回不可读

2024-05-19 20:27:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用ogm通过py2neov3查询Neo4j:

输出=图形运行(“MATCH(m:Column{name:'code'}),(n:Column{name:'locale\u language\u cd'}),p=shortestPath((m)-[rels:u的一部分*]-(n) )RETURN p“).evaluate()

打印(输出)

这正符合我的要求,但节点不清晰

(f0b4322)-[:第\部分]->;(f86202d)<;-[:第\部分]-(a16fb7b)-[:第\部分]->;(b3562af)<;-[:第\部分]-(a7bfe43)

如果我再次运行代码:

(b539883)-[:第\部分]->;(c83d89b)<;-[:第\部分]-(f2adac1)-[:第\部分]->;(fd469a6)<;-[:第\部分]-(e373bf4)

以下是Neo4j中数据的链接:Neo4j output with same search parameters

每次运行代码时,输出都是不同的,我希望用GraphObject名称(它们的主键)替换数字。你知道吗


Tags: 代码nameltgt图形matchcdcode
1条回答
网友
1楼 · 发布于 2024-05-19 20:27:27

因为您只查询与name=code和name='locale\u language\u cd'匹配的节点,所以假设您从一大包苹果中随机挑选一个苹果。。苹果。。嗯。。。你知道吗

每次你伸手进去,就会得到一个不同的苹果。
这条路也是一样。你不是要“最短路径”什么的。实际上,您要求数据库在n&m之间选择“找到的第一条路径”

如果要获得更一致的结果,请在任一节点上按主键搜索,或按其他属性排序,然后选择可用的“第一个”。。你知道吗

要回答第二个问题,请返回并打印节点,而不是打印“path”对象的结果集。你知道吗

或者,使用内置函数对结果进行迭代。你知道吗

比如:

for x in results:
    p = x['p'] # This is the path
    print p

看看p里有什么

相关问题 更多 >