2016-02-18 35 views
0

任何人都可以告訴我如何獲得遍歷中的所有節點和邊?Orientdb:遍歷不生成正確的輸出

例如,如果我運行下面的查詢:

select from (TRAVERSE in(), inE() FROM (SELECT FROM Example_Class WHERE @rid = #13:187)) 

結果每一次變化。

要求:從特定節點獲取所有無序節點和邊(上例中#13:187)。檢索在遍歷從特定節點的圖中遇到的邊和節點

+0

嗨,我不是很想理解你的需求,你可以添加一個圖形化的例子嗎? tnx –

+0

你可以在這裏找到遍歷信息http://orientdb.com/docs/2.1/Java-Traverse.html#traversing-strategies –

+0

感謝伊萬,無論如何解決了這個問題。 –

回答

0

一種方法,說節點時,使用查詢:

> traverse outE(), inV() from NODE 

下面是一個例子。首先,讓我們運行()來檢索遇到的節點(這裏是開始(#11:11)和結束(#11:15));所得行給出的邊緣信息:

> traverse out() from #11:11 

----+------+------+-----+-------+------- 
# |@RID |@CLASS|label|in_E3 |out_E3 
----+------+------+-----+-------+------- 
0 |#11:11|Circle|4 |[#15:2]|[#15:4] 
1 |#11:15|Circle|8 |[#15:4]|null 
----+------+------+-----+-------+------- 

這裏的圖片是:(#11:11) - [#15:4]>(#11:15)

現在讓我們制定查詢,以便結果集的行包括節點和邊緣:

> traverse outE(), inV() from #11:11 

----+------+------+-----+-------+-------+------+------ 
# |@RID |@CLASS|label|in_E3 |out_E3 |in |out 
----+------+------+-----+-------+-------+------+------ 
0 |#11:11|Circle|4 |[#15:2]|[#15:4]|null |null 
1 |#15:4 |E3 |4>8 |null |null |#11:15|#11:11 
2 |#11:15|Circle|8 |[#15:4]|null |null |null 
----+------+------+-----+-------+-------+------+------