경로가 있고이 경로에 연결된 일부 노드를 가져 오려고합니다. 나는이 qwery를 쓰고 제대로 작동하지 않습니다 :neo4j에서 경로의 이웃 노드를 얻는 방법
match p=(a)-[:example*]->(c) where length(p) = 5
with p
match (u)-[r:example2]-> p return u,p,r
내가 'U'노드 모든 것을 싶어. 내가 뭘 잘못하고 있는지 말해 줄 수 있니?
감사합니다.
경로가 있고이 경로에 연결된 일부 노드를 가져 오려고합니다. 나는이 qwery를 쓰고 제대로 작동하지 않습니다 :neo4j에서 경로의 이웃 노드를 얻는 방법
match p=(a)-[:example*]->(c) where length(p) = 5
with p
match (u)-[r:example2]-> p return u,p,r
내가 'U'노드 모든 것을 싶어. 내가 뭘 잘못하고 있는지 말해 줄 수 있니?
감사합니다.
nodes()
함수를 사용하여 경로 노드를 추출하고 UNWIND
목록을 일치시킨 다음 일치를 수행하십시오. 각 노드에 대한 결과는 collect
일 수 있습니다.
match p=(a)-[:example*]->(c)
where length(p) = 5
with a, nodes(p) as pathNodes
unwind pathNodes as pathNode
match (u)-[r:example2]->(pathNode)
return a, collect([u, pathNode])
안녕하세요, 고맙습니다.하지만 경로의 n 장소가 아닌 모든 노드를 얻는 방법은 무엇입니까? (p [n]) –
그에 따라 내 대답이 업데이트되었습니다. 유스 케이스에 따라'u' 또는'pathNode' 노드 만 수집하면된다. –
고맙습니다. 효과가있었습니다! (나는 단지 수를 필요로했다) –
스택 오버 플로우에 오신 것을 환영합니다! 편집기로 쿼리를 소스 코드로 포맷하십시오. –
done, thank you –