0
我有一個數據庫,其中包含遊戲中使用的策略。查找所有等價關係的節點
(strategy_1:Human) - [:BEATS] -> (strategy_1:Alien)
(strategy_2:Human) - [:BEATS] -> (strategy_1:Alien)
(strategy_3:Human) - [:LOSES] -> (strategy_1:Alien)
(strategy_4:Human) - [:DRAWS] -> (strategy_1:Alien)
(strategy_1:Human) - [:LOSES] -> (strategy_2:Alien)
(strategy_2:Human) - [:LOSES] -> (strategy_2:Alien)
(strategy_3:Human) - [:LOSES] -> (strategy_2:Alien)
(strategy_4:Human) - [:DRAWS] -> (strategy_2:Alien)
因此,人類的戰略可以打擊,制止或失去對外國人的戰略。我試圖找到所有具有平等關係的策略,所以BEAT,DRAW或LOSE都是針對相同的外星人策略。
在示例中,它將是strategy_1和strategy_2。現在我走這條路:
MATCH (strategyA:Human)-[r1]->(strategyB:Alien)<-[r2]-(strategyC:Human)
WHERE type(r1) = type(r2) AND NOT strategyA = strategyC
RETURN strategyA
但是,這當然只會給我所有的策略至少有一個匹配關係。我現在該如何做出測試所有戰略A和戰略C相互關係的步驟?或者有更簡單的方法來做到這一點?
嘿,那已經很酷,但不正是我所期待的。我試圖找到所有相互平等的人類戰略,贏得,失敗和吸取相同的外來戰略。 – Philiiiiiipp