2016-10-29 59 views
0

我有2個頂點類 - EMPLOYEE和BRANCH都填充了數據,我希望邊界類InBranch是他們的關係。如何最好根據2個頂點共有的屬性創建邊?

因此Employee -InBranch-> Branch。

具有屬性的類員工 - > empname,branchname。
類別分支與propety-> branchname。

取而代之的是共同財產(分支)的作爲關係
我想使這些爲邊(InBranch)。

我試圖讓工作構建類似如下:

CREATE EDGE InBranch FROM (SELECT FROM Employee) TO (SELECT FROM Branch) WHERE Employee.branchname = Branch.branchname 

這是後盧卡Garulli代碼直觀圖形化:

create edge Owns from (select from Person) to (select from Country) 

OrientDB: Using Schemas with Graphs, Part 1

回答

1

無法通過SQL直接去做,但你可以使用一個JS函數:

var g = orient.getGraph(); 
var emp = g.command('sql','select from Employee'); 

for each (a in emp){ 
    br = g.command('sql','select from Branch where branchname = "' + a.getProperty('branchname') + '"'); 
    for each (b in br){ 
    g.command('sql','create edge inBranch from ' + a.getId() + ' to ' + b.getId()); 
    } 
} 
+0

感謝。我希望這也可以在將來使用SQL通過where子句來完成。 – cosmos

相關問題