2017-04-07 72 views

回答

1

這取決於您是否正在尋找特定的連接(通過公司節點),或者只是尋找任何連接。

假設:人員節點有一個名稱,並且該人員節點X和Y具有名稱'x'和'y',因此我們可以與他們匹配。我們還要說你有一個索引:人名(姓名),以便我們可以快速查找節點。

如果我們想要的查詢是「做的人x和y共享相同的公司」,查詢此,在問題返回公司,是:

match (x:Person{name:'x'})<-[:HAS_EMPLOYEE]-(comp:Company)-[:HAS_EMPLOYEE]->(y:Person{name:'y'}) 
return comp 

但是,如果我們不知道如何這些人是連接在一起的,或者即使他們連接上了,那麼我們可能會希望在節點之間運行一個shortestPath()匹配,並查看連接它們的東西。

它有助於設置此匹配的上限。現在讓我們使用8跳最大值。

match path=shortestPath((x:Person{name:'x'})-[*..8]-(y:Person{name:'y'})) 
return path 
+0

我正在尋找最短路徑,我們不知道有公司與他們有關。完美的答案。 –

相關問題