我有一个数据库,其中每个节点都连接到具有关系的所有其他节点,并且每个关系都有权重。我需要一个查询,其中给定权重w和多个节点n,我想要所有n个节点,其中每对关系的权重大于w。
对此的任何帮助都很棒
答案 0 :(得分:2)
这取决于您希望结果集的外观。像这个查询一样简单的东西会返回符合您标准的所有路径:
MATCH p=()-[r:my_rel]->() WHERE r.weight > w RETURN p;
这会返回所有这些路径。
如果您只想要两个节点(而不是整个模式的结果),则只能返回这两个节点:
MATCH (n1)-[r:my_rel]->(n2) WHERE r.weight > w RETURN n1,n2;
请注意,由于Neo4J的存储内部结构,基于关系属性执行搜索的效果往往不如基于节点属性的搜索效果好。