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
在cypher neo4j中,查找长度大于x且其权重之和(a属性)大于Y的路径_Neo4j_Cypher - Fatal编程技术网

在cypher neo4j中,查找长度大于x且其权重之和(a属性)大于Y的路径

在cypher neo4j中,查找长度大于x且其权重之和(a属性)大于Y的路径,neo4j,cypher,Neo4j,Cypher,在我的neo4j图形数据库中,我将问题和人作为我的节点,关系是“链接”(问题到问题)和“资源”(问题到人) 我感兴趣的是找到问题的所有路径,它们的权重之和大于阈值y,链的总长度大于x 我不确定以下是否有效,因为我认为它只是给了我5个链接的问题 MATCH (s:Issue)-[rs:links*5..]->(m:Issue) WITH s, rs, m unwind rs as r return s AS source_node, id(s) AS source_id,

在我的neo4j图形数据库中,我将问题和人作为我的节点,关系是“链接”(问题到问题)和“资源”(问题到人)

我感兴趣的是找到问题的所有路径,它们的权重之和大于阈值y,链的总长度大于x

我不确定以下是否有效,因为我认为它只是给了我5个链接的问题

MATCH (s:Issue)-[rs:links*5..]->(m:Issue)
WITH s, rs, m
unwind rs as r
return s AS source_node,
       id(s) AS source_id,
       r,
       m AS target_node,
       id(m) AS target_id
我也尝试过使用count,但我认为这不是正确的方法。

要做到这一点,请使用累积关系的权重。考虑x=5和y=200:

MATCH (s:Issue)-[rs:links*5..]->(m:Issue) // match depths with 5 (x) or more
WITH REDUCE(weights = 0, rel IN rs | weights + rel.weight) AS total_weight, s, rs, m
WHERE total_weight < 100 // filter by total_weight < y (100)
unwind rs as r
return s AS source_node,
       id(s) AS source_id,
       r,
       m AS target_node,
       id(m) AS target_id
MATCH(s:Issue)-[rs:links*5..]>(m:Issue)//将深度与5(x)或更多匹配
以减少(重量=0,相对重量为卢比|重量+相对重量)作为总重量,s,rs,m
其中总重量<100//按总重量
Hi@Stefan Georg!我的回答帮你解决问题了吗?如果是,您可以单击复选标记吗?这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。没有义务这样做。