我有一個簡化的Neo4j圖(舊版本2.x)作爲具有'定義'和'相同'邊緣的圖像。假定在define
邊緣的數目是在邊緣過濾掉兩個密碼路徑上的節點
的查詢一個屬性我想運行有:
1)找到節點由A和B兩者defined
- Requried結果:C,C,d
START A=node(885), B=node(996) MATCH (A-[:define]->(x)<-[:define]-B) RETURN DISTINCT x
上述工作並返回C和D.但是我想C鈕兩次,因爲它定義了兩次。但是如果沒有獨立的x,它將返回從A到B的所有路徑。
2)查找非節點(由A,B定義或由A,B定義,但通過同一條邊連接) - 必需的結果:g^
是這樣的:
R1: MATCH (A-[:define]->(x)<-[:define]-B) RETURN DISTINCT x
R2: MATCH (A-[:define]->(e)-(:similar)-(f)<-[:define]-B) RETURN e,f
(用A定義的節點 - (R1 + R2))
3)找到沒有匹配來自A和B的「中間」節點 - 所需結果:C,G
我想輸出C,因爲有1 define
(45/46)沒有匹配的來自B. 還輸出g界定,因爲沒有define
至G從B.
欣賞任何幫助!
您使用的是哪個版本的Neo4j?在你的比賽中缺少的括號看起來不像它應該在Neo4j 3.x中運行。 – InverseFalcon