Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neo4j使用AnomCypher从shortpath使用case类解析节点_Neo4j_Cypher - Fatal编程技术网

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。