2013-03-06 99 views
3

我是Neo4J概念中的新手。 我想知道,如果有任何方法,在以graphdb格式部署後,如何列出連接到特定節點的所有可能節點。 簡而言之,我一直在能夠導入一個標籤分離.csv 現在我想知道是否有可能列出任何特定節點的所有鄰居,其ID可以作爲參數傳遞。Neo4j確定鄰居

回答

6

你可以用多種方法做到這一點。其中之一是使用Cypher支架聲明象下面這樣:

for (final Path position : Traversal.description() 
    .evaluator(Evaluators.fromDepth(1))      
    .evaluator(Evaluators.toDepth(1)) 
    .evaluator(Evaluators.excludeStartPosition()).traverse(yourStartNode)) { 
     System.out.println(position.endNode()); 
} 
+2

不需要使用'n - [* 1..1] -m'。只需使用'n - m'。 – ulkas 2013-03-06 08:47:44

0

我想補充到tstorms回答:

START n=node({nodeId}) MATCH n-[*1..1]-m RETURN m; 

如果您使用的是Java,你可以按如下方式使用遍歷API集合,所以你會得到所有節點+集合neigbours的一行:

START n=node({nodeId}) MATCH n--m RETURN n,collect(m); 

或所有節點及其鄰居:

START n=node(*) MATCH n--m RETURN n,collect(m) order by Id(n);