繁体   English   中英

Neo4j Cypher Query 获取所有子节点,直到到达具有特定关系的节点

[英]Neo4j Cypher Query to get all sub nodes until reaching a node with a specific relationship

我正在尝试解析的图表

我正在尝试创建一个查询,其中以名为“分析单位”的蓝色节点开头。 查询将获取所有子节点,除非它遇到一个节点,该节点通过直接附加到不同的分析单元来“覆盖”关系。 任何帮助,将不胜感激!

这个查询对你有用吗?

它应该返回每个Blue节点(具有到任何Red节点的路径)及其“子节点”(沿着每条路径),忽略任何子节点(第一个除外)具有传入ANALYTICALLY_COMPOSED关系的路径:

MATCH (a:Blue)-[:ANALYTICALLY_COMPOSED]->(b)
MATCH p=(b)-[rels*]-(:Red)
WITH a, NODES(p) AS subnodes
WHERE NONE(n IN subnodes[1..] WHERE ()-[:ANALYTICALLY_COMPOSED]->(n)) 
RETURN a, subnodes;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM