Мой граф является ориентированным ациклическим графом.Я хотел бы запросить подграф данного родительского узла, но затем отфильтровать подграфы, которые имеют отношение к другому родительскому узлу.Я создал изображение для иллюстрации.
Например, я хотел бы выбрать подграф (C)-[r]->(D)
, но исключить (B)-[r]->(E)
, потому что это дочерний элемент (A)
.
Я написалследующий запрос Cypher, который включает в себя вызов apoc.path.subpgrahAll()
, отфильтровывает (B), но не отфильтровывает узлы, такие как (E)
MATCH (n {id: 'C'})
CALL apoc.path.subgraphAll(n, {relationshipFilter: 'CONNECTED>'})
YIELD nodes, relationships
UNWIND nodes as node
WITH node
WHERE SIZE(()-[:CONNECTED]->(node)) = 1
RETURN node