Neo4j使用AnomCypher从shortpath使用case类解析节点
我的问题如下:Neo4j使用AnomCypher从shortpath使用case类解析节点,neo4j,cypher,Neo4j,Cypher,我的问题如下: MATCH p = shortestPath((s:DumbNode { x:1, y:1 })-[*..5000]-(f:SmartNode { description:'Thing' })) RETURN p 我希望能够使用case类从路径中提取顶点/边,就像我可以使用常规匹配一样 我可以看到结果p包含两个元组,其中包含关系和节点数据。但是,非编译数据不是CypherResult行,而是路径中每个节点或边的RESTFUL端点 是否有一种正确的方法来执行此操作,或者我必须迭
MATCH p = shortestPath((s:DumbNode { x:1, y:1 })-[*..5000]-(f:SmartNode { description:'Thing' }))
RETURN p
我希望能够使用case类从路径中提取顶点/边,就像我可以使用常规匹配一样
我可以看到结果p包含两个元组,其中包含关系和节点数据。但是,非编译数据不是CypherResult行,而是路径中每个节点或边的RESTFUL端点
是否有一种正确的方法来执行此操作,或者我必须迭代提供的数据并使用节点和边缘ID进行调用?如果您正在查找节点,下面是我提出的最佳方法。您可以使用AnomCypher中的隐式转换器转换为一系列NeoNodes:
Cypher("""
MATCH p = shortestPath((s:DumbNode { x:1, y:1 })-[*..5000]-(f:SmartNode { description:'Thing' }))
RETURN nodes(p)
""")().map(row =>
row[Seq[NeoNode]]("nodes(p)")
)
从RC1开始,他们改变了路径在2.0中的工作方式。让我看看能不能找到一个好办法。我想我能做到吗?MATCH p=shortestPath((s:DumbNode{x:1,y:1})-[*..5000]-(f:SmartNode{description:'sda'}))返回提取(节点中的ver(p)| ver.x为x,ver.y为y)是的,节点(p)可能是获取节点数据的最简单方法。需要构建一个新的NeoPath类型,它看起来像:我的方法不起作用,因为你不能提取两个属性。我想我会试试你下面的方法。PS昨晚你给我发了推特,我希望你能回答这个问题。Anomcypher的查询会自动出现在我的收件箱中:P我最近做的围棋比scala多,但我需要给anormcypher一些TLC。