不確定的第2層關係的回報節點如何最好地字本 - 下面的圖中暗號查詢 - 這是與2個或更多的間接節點
我試圖返回的所有節點第二層節點與2個或更多第一層節點相關,但只有第一層節點不同。因此,在示例圖片中,我想返回灰色節點660082,綠色節點110258以及與它相關的所有粉色節點&關係。例如,我不想看到粉紅色節點與同一綠色節點具有2個關係的綠色節點。到目前爲止,我的暗號看起來像這樣
MATCH (i:IFB_Flagged)-[r]->(m:Matters)<-[r2]-(ie:Indirect_Entity)
WITH i, ie,r, collect(m) AS overlap
WHERE size(overlap) > 1 and i.id = '660082'
RETURN i, ie, overlap
這確實出現了工作,因爲它篩選出只有一個鏈接到一個綠色節點粉紅色的節點,但我無法弄清楚如何只返回粉紅色的節點,其中相關的綠色節點不是同一個節點
UPDATE
當增加一個獨特的收集&刪除where子句完全,我得到一個完全不同的曲線,但它實際上是接近我想要顯示
我仍然希望看到與多個綠色節點相關的所有粉色節點 - 但我不想看到僅與一個綠色節點(屏幕左下角的6個粉色節點)相關的粉色節點
這是我的Cypher - 我不確定爲什麼collect(distinct m)在這種情況下不起作用?
MATCH (i:IFB_Flagged)-[r]->(m:Matters)<-[r2]-(ie:Indirect_Entity)
WITH i, ie,r, collect(distinct m) AS overlap
WHERE i.id = '385886'
RETURN i, ie, overlap limit 20
但在你的榜樣綠色節點是所有紅色節點相同,同爲每個紅色節點的兩個關係......總之,可以嘗試在一個獨特的條款在您的收集,是這樣的:'收集(明確的m)' –
問題的措詞不符合你實際上想要的。 – cybersam
問題中的紅色節點實際上更像粉紅色。讓我們等待OP得到這個結果。 –