Cypher query to find nodes that are not related to other node by property과 유사하지만 지금까지 저를 괴롭히기에 충분합니다. 그들은 언어의 요구 사항을 충족 이미 그것에 관계 (예를 들어, 일 또는 거부)를 가지고 있지 않은 경우사이퍼 쿼리를 사용하여 일부 관계가있는 노드를 찾으십시오.
사람은 작업을받을 수 있습니다.
작업은 서로 의존 할 수 있으며 0 이상 DEPENDS_ON
개의 rel 및 'root'작업 REQUIRES
을 통해 언어를 '상속'할 수 있습니다.
& hellip;을 (를) 찾을 수있는 쿼리를 만들려고합니다.
p1
나는, 일 다움 아직p2
이 4p3
을받을 경우에도 약t1
년대를 걱정하지 어떤
에 적합하지 않습니다 t2
및 t4
자격이 나는 '유산'을 지나치고 지나간다고 생각하지 않는다. 예를 들어
p2
을 위해 :
MATCH (p:Person {name: 'p2'})-[:SPEAKS]->(lang) WITH p, collect(lang) AS langs MATCH (t:Task)-[:DEPENDS_ON*0]->(:Task)-[:REQUIRES]->(lang:Language) WHERE lang IN langs RETURN t
0 행
MATCH (p:Person {name: 'p2'})-[:SPEAKS]->(lang) RETURN lang
가져 두 언어를 발견, 그래서 난 확실히 collect(lang) as langs
내가 원하는 것을 (꽤?) .
제거 :DEPENDS_ON*
링크
MATCH (p:Person {name: 'p2'})-[:SPEAKS]->(lang) WITH p, collect(lang) AS langs MATCH (t:Task)-[:REQUIRES]->(lang:Language) WHERE lang in langs RETURN t
나에게 t1
, t2
및 t3
를 가져옵니다.
어떻게 t4
을받을 수 있습니까?
TIA!
좋은 점 - 추측해볼만한 그래프가 더 필요합니다. –