我使用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名称(它们的主键)替换数字。你知道吗
因为您只查询与name=code和name='locale\u language\u cd'匹配的节点,所以假设您从一大包苹果中随机挑选一个苹果。。苹果。。嗯。。。你知道吗
每次你伸手进去,就会得到一个不同的苹果。
这条路也是一样。你不是要“最短路径”什么的。实际上,您要求数据库在n&m之间选择“找到的第一条路径”
如果要获得更一致的结果,请在任一节点上按主键搜索,或按其他属性排序,然后选择可用的“第一个”。。你知道吗
要回答第二个问题,请返回并打印节点,而不是打印“path”对象的结果集。你知道吗
或者,使用内置函数对结果进行迭代。你知道吗
比如:
看看p里有什么
相关问题 更多 >
编程相关推荐