溫馨提示×

Cypher路徑查詢怎樣設(shè)置條件

小樊
81
2024-10-31 21:10:27
欄目: 編程語言

在Neo4j中,Cypher是一種用于查詢圖形數(shù)據(jù)庫的語言。要在Cypher路徑查詢中設(shè)置條件,您可以使用WHERE子句來添加過濾條件。以下是一個簡單的示例,說明如何在路徑查詢中設(shè)置條件:

假設(shè)我們有以下圖形數(shù)據(jù)庫結(jié)構(gòu):

(A)-[:R1]->(B)-[:R2]->(C)
(B)-[:R3]->(D)
(C)-[:R4]->(E)

我們想要查詢所有從A到E的路徑,但只關(guān)心那些包含關(guān)系類型為R2R4的路徑。我們可以使用以下Cypher查詢來實現(xiàn)這一目標(biāo):

MATCH (a)-[r:R1*]->(e)
WHERE (type(r) = "R2" OR type(r) = "R4")
RETURN a, e, r

在這個查詢中,我們使用MATCH子句來查找從A到E的所有路徑。*表示任意數(shù)量的R1關(guān)系。然后,我們使用WHERE子句來過濾出那些關(guān)系類型為R2R4的路徑。最后,我們返回路徑中的節(jié)點和關(guān)系。

0