0
我的Cypher支架的查詢看起來像這樣:具有可變長度路徑的Cypher查詢
match (n1:N1)-[r1:R1]->()<-[r2:R2*0..]-(n3)<-[r3:R3]-(n4) return *
因爲在可變長度關係(<-[r2:R2*0..]-
)的0,I期待此查詢是相同的爲以下的(n2
添加):
match (n1:N1)-[r1:R1]->(n2)<-[r2:R2*0..]-(n3)<-[r3:R3]-(n4) return *
但他們返回完全不同的結果。 有人可以幫我理解爲什麼會出現這種情況嗎? 僅僅是0
是不允許的? 謝謝。
我正在將結果看作圖形(瀏覽器中的交互式可視化),而不是表格。在那種情況下,我希望結果是一樣的。 – Dennis
沒有。 「R2 * 0 ...」表示零長度關係,即無關係。 –
@ChristophMöbius你在這裏弄錯了,「..」表示這是一種變長的關係。 0是下限,因爲我們省略了上限,所以它默認爲無限。文檔中的[零長度路徑]部分(https://neo4j.com/docs/developer-manual/current/cypher/clauses/match/#_zero_length_paths)解釋了此模式將與始發節點本身相匹配,或任何數量的給定類型的關係(零關係以上)以匹配路徑的下一部分。 – InverseFalcon