2017-02-20 123 views
0

我有兩個v類:vuser和vlang 和e類:說話。OrientDB在圖形模式下的邊緣

所以:Vuser的 - >說 - > vlang

然後我正嘗試在我的圖表看這充分說明 'AR' 和用戶的我的查詢是下一個:

select expand(in('speaks')) from vlang where lang = 'ar' 

有了這個,我看到的是用戶,而不是vlang和邊緣的頂點。如何顯示lang ='ar'的邊緣和vlang?我已經閱讀了OrientDB文檔,但是我沒有看到這個問題類型。

在此先感謝。

回答

0

如果你是開V 2.2,您可以使用符合此:

MATCH 
{class:vlang, as:lang, where:(lang = 'ar')} <-speaks- {as:user} 
RETURN $elements 

這將返回用戶和郎頂點。如果您還需要邊緣,你可以使用這個語法:

MATCH 
{class:vlang, as:lang, where:(lang = 'ar')} 
    .inE("speaks"){as:theEdge} 
    .outV(){as:user} 
RETURN $elements 

這將返回一個邊/頂點只有一次,在結果集一個單獨的項目。

如果你想看到的單一模式,你可以改變返回條款:RETURN $patterns

完整的語法在這裏:http://orientdb.com/docs/2.2.x/SQL-Match.html