2013-12-23 108 views
0

在Neo4j的,我有以下結構(本質上鍊表的鏈表):如何獲取neo4j鏈接列表中的所有節點?

(projects) 
    | 
[LatestProject] 
    | 
    V 
(p1:Project)-[LatestTask]->(t1:Task)-[PrevTask]->(t2:Task)-[PrevTask]->(t3:Task) 
    | 
[PrevProject] 
    | 
    V 
(p2:Project)-[LatestTask]->(t4:Task)-[PrevTask]->(t5:Task)-[PrevTask]->(t6:Task) 
    | 
[PrevProject] 
    | 
    V 
(p3:Project)-[LatestTask]->(t7:Task)-[PrevTask]->(t8:Task) 

我想編寫一個查詢Cypher支架,給定一個項目ID,返回所有任務(從最新的一個到最古老的一個)。

我試過如下:

start p=node(2) // project ID = 2 
MATCH p-[:LatestTask]->(first:Task)-[:PreviousTask*]->(t:Task) 
return first, t 

但這返回幾個行的表:

(first) (t1) 
(first) (t2) 

我怎樣才能返回以下,而不是?

(first) 
(t1) 
(t2) 
+0

對不起,我試着創建一個Neo4j控制檯,但它似乎目前無法正常工作...... –

回答

1

我想我找到了答案,以我自己的問題:

start p=node(2) // project ID = 2 
MATCH p-[:LatestTask|PreviousTask*]->(t:Task) 
return t 

似乎返回正確的設置爲三個獨立的行。

相關問題