在Neo4j中,Cypher是一種用于查詢圖形數據庫的語言。要在Cypher路徑查詢中設置條件,您可以使用WHERE
子句來添加過濾條件。以下是一個簡單的示例,說明如何在路徑查詢中設置條件:
假設我們有以下圖形數據庫結構:
(A)-[:R1]->(B)-[:R2]->(C)
(B)-[:R3]->(D)
(C)-[:R4]->(E)
我們想要查詢所有從A到E的路徑,但只關心那些包含關系類型為R2
或R4
的路徑。我們可以使用以下Cypher查詢來實現這一目標:
MATCH (a)-[r:R1*]->(e)
WHERE (type(r) = "R2" OR type(r) = "R4")
RETURN a, e, r
在這個查詢中,我們使用MATCH
子句來查找從A到E的所有路徑。*
表示任意數量的R1
關系。然后,我們使用WHERE
子句來過濾出那些關系類型為R2
或R4
的路徑。最后,我們返回路徑中的節點和關系。