簡體   English   中英

Neo4j:如何找到具有相互連接節點的連接節點?

[英]Neo4j: how to find connected nodes with mutual connections nodes?

MATCH (n), (n)-[:connected_to {status: 2}]-(sp:StayPal)
OPTIONAL MATCH (n)-[:connected_to {status: 1}] - (mutual_friend)-[:connected_to {status: 1}]-(sp)
WHERE (ID(n) = {ID_n})
RETURN DISTINCT sp, collect(mutual_friend)

我正在嘗試獲取狀態為2的n(staypal)的所有連接以及n和sp的所有相互連接,但是我得到了錯誤的結果

有什么幫助嗎?

WHERE子句的位置很重要,因為它適用於前面的子句。 將其放置在您的MATCH(而不是可選MATCH)下。

請記住,OPTIONAL MATCH的行為是查找匹配項,並且如果未找到匹配項(包括如果OPTIONAL MATCH的WHERE子句的計算結果為false),則新引入的變量將設置為null。

另外,除了模式匹配之外,也不需要匹配(n)。 只需在第一行使用MATCH (n)-[:connected_to {status: 2}]-(sp:StayPal)

暫無
暫無

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

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