START s=node(0)
MATCH p=s-[*]->n
WHERE n:label
RETURN id(n), n.property
ORDER BY length(p) asc
Run Code Online (Sandbox Code Playgroud)
由于有多个到 n 的路径,因此我返回了重复的节点。我怎样才能返回唯一的节点?
你可以做 return distinct。
START s=node(0)
MATCH p=(s)-[*]->(n)
WHERE n:label
RETURN DISTINCT id(n), n.property
ORDER BY length(p) asc
Run Code Online (Sandbox Code Playgroud)
但是,如果您这样做……也许这对您更好?
START s=node(0)
MATCH (n:label)
WITH s, n
MATCH p=shortestPath((s)-[*]->(n))
RETURN DISTINCT id(n), n.property
ORDER BY length(p) asc
Run Code Online (Sandbox Code Playgroud)