You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写Cypher语句从指定节点筛选符合关系属性的所有路径?

对应的Cypher语句编写方案

核心需求拆解

要找的是从id为10的节点出发,所有全程只用type='type1'的RELATED_TO关系走到底的路径——意思是路径里每一步的关系都得是type1,直到再也找不到下一个type1的关系为止。

最终可用的Cypher语句

MATCH path = (start {id: 10})-[:RELATED_TO {type: 'type1'}*]->(end)
WHERE NOT (end)-[:RELATED_TO {type: 'type1'}]->()
RETURN path

语句说明

  • MATCH path = (start {id: 10})-[:RELATED_TO {type: 'type1'}*]->(end):匹配从id=10的节点出发,通过任意多段(*表示不限步数)type='type1'的RELATED_TO关系连到终点节点的完整路径。
  • WHERE NOT (end)-[:RELATED_TO {type: 'type1'}]->():筛掉那些还能继续走type1关系的路径,只保留走不动的最终路径——比如节点2后面的关系是type2,不符合要求,所以路径停在2;节点1后面没有type1的关系,所以路径到1为止。
  • RETURN path:直接返回所有符合要求的路径。

这样就能得到你要的两条路径:10 -> 5 -> 3 -> 1和10 -> 5 -> 2。

内容的提问来源于stack exchange,提问作者DragonProd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 08:10:25