【问题标题】:Find all the nodes with x distance and y number of paths in neo4j在neo4j中查找距离为x、路径数为y的所有节点
【发布时间】:2022-11-16 20:01:47
【问题描述】:

大家好,我是 neo4j 的新手,正在为某些用例从 mongodb 迁移到 neo4j。我的一个用例是找到具有 x 距离和 y 路径数的所有节点。

在下面的示例中,0 有两条路径到 2,距离为两段距离,0 有一条路径到 4,距离为两段距离。我想写一个只给我2而不是4的查询,因为它只有一条路径。 我能够使用基于距离的过滤节点

Match (a:User {id: 0})-[:follows*2]->(b:User) return b;

但这同时给出了 2 和 4,如何在上述查询中添加路径数 >= 2?

【问题讨论】:

    标签: neo4j cypher


    【解决方案1】:

    您应该数一下a 和b 之间的关系数,然后根据您的数数过滤掉它们,如下所示:

    Match (a:User {id: 0})-[rel:follows*2]->(b:User)
    WITH a, b, count(rel) AS relCount WHERE relCount = 2
    RETURN b
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多