2017-03-03 29 views
-1

如何獲取ARANGO數據庫中的所有圖形無需啓動節點?如何獲取ARANGO數據庫中的所有圖形無需啓動節點

像OrientDB,爲獲得所有圖形僅使用 '選擇從V' image

到目前爲止,我在ArangoDB使用AQL與起始節點:在2 「爲V,E,P ANY 'user/188802'圖'a'返回p'

現在,我想在沒有啓動節點的情況下獲取ArangoDB中的所有圖嗎? 給我的方式朋友..! 謝謝之前!

回答

2

圖形是一組邊緣集合。每個Edge集合都引用存儲在Document集合中的_from和_to文檔。

圖遍歷查詢期望您有一個起始位置,並返回該單個起始位置的結果。

可以確定所有可能的起始位置,然後在這些位置上運行圖形遍歷。

你需要知道文檔的集合,讓你圖的名字,你可以將它們插入到一個AQL這樣的查詢:

FOR vertex IN UNION(
     (FOR v IN document_collection_1 RETURN v._id), 
     (FOR v IN document_collection_2 RETURN v._id), 
     (FOR v IN document_collection_3 RETURN v._id) 
    ) 
    FOR v, e IN 1..5 OUTBOUND vertex GRAPH 'my_graph_name' OPTIONS { uniqueVertices: true } 
    RETURN DISTINCT [ 
     { 
      _from: e._from, 
      _to: e._to 
     } 
    ] 

請記住,在ArangoDB有可能爲一個文件集合綁定到多個圖表上,所以您需要確保識別屬於該圖形的所有文檔集合。

該查詢將提取一個包含圖中定義的所有鏈接的對象數組。該查詢僅關注具有圖的一部分的邊的頂點。如果頂點上沒有邊,則它不會出現在輸出中,因爲它不是圖的一部分。

+0

謝謝,這是非常有幫助的。 –

相關問題