Neo4j-N-gram-到路径中所有节点的距离均为A(x以上)的节点

Neo4j-N-gram-到路径中所有节点的距离均为A(x以上)的节点,neo4j,cypher,Neo4j,Cypher,如何在neo4j cypher查询中查找n-gram? N-gram:距离路径中所有先前节点一段或更长距离(比如>=x)的一系列单词 例如:选择一个作为起始节点 A -dist-> B, where dist(A,B)>=0.8 , one level A -dist-> B -dist-> C, where dist(A,B)>=0.8,dist(A,C)>=0.8,dist(B,C)>=0.8 A -dist-> B -dist-> C

如何在neo4j cypher查询中查找n-gram? N-gram:距离路径中所有先前节点一段或更长距离(比如>=x)的一系列单词

例如:选择一个作为起始节点

A -dist-> B, where dist(A,B)>=0.8 , one level
A -dist-> B -dist-> C, where dist(A,B)>=0.8,dist(A,C)>=0.8,dist(B,C)>=0.8
A -dist-> B -dist-> C -dist-> D, where dist(A,D)>=0.8, dist(B,D)>=0.8, dist(C,D)>=0.8
这意味着,所有可能的节点组合之间的距离应大于阈值(即,0.8)

以下是我的尝试:

MATCH p=(a{word:"quality"})-[r*1..2]->(b) 
WHERE NONE (n IN nodes(p) WHERE size(filter(x IN nodes(p) WHERE n = x))> 1)
AND ALL(rel IN rels(p) WHERE rel.val >= 1.5)
WITH p,size(rels(p))+1 AS nodes
RETRUN p,nodes ORDER BY nodes desc
在此查询中,新添加的节点仅检查先前添加的元素。

请在我的查询中建议更改。谢谢。

您的查询有效吗?结果是什么?是的,该查询返回一个路径,其中所有关系值都大于x。