Neo4j APOC A *有条件

时间:2018-09-17 18:40:48

标签: neo4j cypher neo4j-apoc

我已经成功地使用以下内容通过APOC库中的A *获取最短路径。

apoc.algo.aStar("A", "B", 'Link', 'Length','X','Y') YIELD path, weight

apoc.algo.aStar("A", "B", 'Link', {weight:'Length',default:1, x:'X',y:'Y'}) YIELD path, weight

如何添加过滤器,使其仅使用“ Value”为true的边。 documentation没有提供示例。

public class Node{
    public long Id {get;set;}
    public string Name {get;set;}
    public long X {get;set;}
    public long Y {get;set;}
}

public class Link{
   public bool Value {get;set;}
   public long Length {get;set;}
}

1 个答案:

答案 0 :(得分:2)

没有示例,因为此功能不可用。

因此,您有三种选择:

  • 为“ Value”为真的关系添加一个非常高的Length
  • 通过在关系类型中添加属性“ Value”(即具有两种类型:Link_OnLink_value_Off来修改模型,以便可以使用apoc过程。
  • 以APOC(source code here)的示例为例,创建自己的A *程序