Neo4j APOC A*有条件

Neo4j APOC A*有条件,neo4j,cypher,neo4j-apoc,Neo4j,Cypher,Neo4j Apoc,我在APOC库中使用*成功地使用以下方法获得了最短路径 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 如何添加过滤器,使其仅使用“值”为真的边。这篇文章没有提供一个例子 public class Node{

我在APOC库中使用*成功地使用以下方法获得了最短路径

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
如何添加过滤器,使其仅使用“值”为真的边。这篇文章没有提供一个例子

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;}
}

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

所以你有三个选择:

  • 在“value”为true的关系上添加一个非常高的
    长度
  • 通过在关系类型中添加属性“Value”(即有两种类型:
    Link\u On
    Link\u Value\u Off
    )来修改您的模型,以便您可以使用apoc过程
  • 以APOC()中的A*过程为例,创建自己的A*过程

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

      所以你有三个选择:

      • 在“value”为true的关系上添加一个非常高的
        长度
      • 通过在关系类型中添加属性“Value”(即有两种类型:
        Link\u On
        Link\u Value\u Off
        )来修改您的模型,以便您可以使用apoc过程
      • 以APOC()中的A*过程为例,创建自己的A*过程