簡體   English   中英

Neo4j查找路徑但沒有某個節點

[英]Neo4j Finding path but without a certain node

我對Neo4j不是很熟悉,因為我剛用它好幾天了。

但現在我想找到兩個節點之間的路徑

喜歡路徑:A&D

A - > B - > C - > D.

A - > B - > E - > D.

A - > C - > E - > D.

並使用“WHERE NOT”來消除節點B.

所以我將離開路徑A - > C - > E - > D.

我有什么方法可以做到這一點?

這是我的Cypher:

MATCH (home { name:'Grove' }),(school { name:'Moulton' }),(Ann {name:'Ann'}),
p = ((home)-[*..4]->(school))
WHERE NOT ((home)-[]->(Ann))
RETURN p

它不適合我

您可以在WHERE子句中使用NONE謂詞來過濾掉包含B節點的路徑。 有關示例,請參見http://console.neo4j.org/?id=hppthl

cypher語句如下所示:

 MATCH p=(:Person { name:'A' })-[:KNOWS*..4]->(:Person { name:'D' }), 
       (without:Person { name:'B' }) 
 WHERE NONE (x IN nodes(p) WHERE x=without)
 RETURN p

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM