在Cypher中,您可以使用WITH
子句進行嵌套查詢。WITH
子句允許您在查詢的不同階段對結(jié)果進行轉(zhuǎn)換和篩選。這里有一個簡單的例子來說明如何在Cypher中進行嵌套查詢:
假設(shè)我們有以下兩個節(jié)點類型:Person
和Movie
,它們之間存在ACTED_IN
關(guān)系。
CREATE (p1:Person {name: "Alice"})-[:ACTED_IN]->(m1:Movie {title: "The Matrix"})
CREATE (p2:Person {name: "Bob"})-[:ACTED_IN]->(m2:Movie {title: "Inception"})
CREATE (p1)-[:ACTED_IN]->(m3:Movie {title: "The Matrix"})
現(xiàn)在,我們想要查詢所有演員(Person
節(jié)點),他們參演了兩部或更多的電影。我們可以使用嵌套查詢來實現(xiàn)這個目標:
MATCH (p:Person)-[:ACTED_IN]->(m:Movie)
WITH p, COUNT(m) AS movie_count
WHERE movie_count >= 2
WITH p, movie_count
RETURN p.name, movie_count
在這個查詢中,我們首先使用MATCH
子句找到所有演員和他們參演的電影。然后,我們使用WITH
子句將結(jié)果傳遞給下一個WITH
子句,以便我們可以計算每個演員參演的電影數(shù)量。接下來,我們使用WHERE
子句篩選出演藝了兩部或更多電影的演員。最后,我們返回演員的名字和他們參演的電影數(shù)量。
這個例子展示了如何在Cypher中使用WITH
子句進行嵌套查詢。您可以根據(jù)需要調(diào)整查詢以滿足您的需求。