0

私はこの回答から助けを得ましたが、それは正常に機能しますが、分離されたノードは関係のない単一ノード (子ノード) を意味しません。この場合、私が得ているのは、その1つのノードでさえありません。私がneo4jの初心者であることを親切に助けてください。

回答リンク

OPTIONAL MATCH path = (x)-[*0..100]->()       
WHERE ID(x) = 65
UNWIND nodes(path) as node
UNWIND rels(path) as rel

WITH collect(distinct node) as nodes,collect(distinct rel) as rels
// WITH apoc.coll.flatten(collect(nodes(path))) as nodes, apoc.coll.flatten(collect(relationships(path))) as rels
WITH apoc.coll.toSet([n in nodes WHERE n is not null 
            | { id: id(n),label: labels(n),type:"",metadata: properties(n)  } ]) as nodes,
     apoc.coll.toSet([r in rels WHERE r is not null 
            | { id: id(r),source: id(startNode(r)),relation: type(r),target: id(endNode(r)), directed: "true"  } ]) as rels

RETURN { graph: { type:"",label: "",directed: "true",nodes: nodes,edges: rels,
         metadata:{ countNodes: size(nodes),countEdges: size(rels) } } } as graph;

ありがとう

4

1 に答える 1