2014-06-06 76 views
1

比方說,我有這樣的圖表:小鬼GROUPBY在Java中

 +--own--> [made=Renault] --------------is-------------+ 
[name=Joan]            v 
    +--own--> [made=Citroen] --is--> [type=Gas]  [type=Diesel] 
    +--own--> [made=Peugeot] --is--> [type=Gas]   ^
[name=Jacky] --own--> [made=Opel] ------------is-----------+ 

現在我想產生類型的燃料,每自己的的列表。

| Person | Type | 
+--------+--------+ 
| Joan | Gas | 
| Joan | Diesel | 
| Jacky | Diesel | 

在SQL我可能會使用ORDER BY上都類型名稱,但我不明白精怪怎麼能I組呢?

回答

1

table pipe這樣做。我的模型加載了名爲「_stp_type」的索引屬性,其中包含Joan和Jacky的值「Person」。我也有他們的「名稱」屬性。

g.idx('entities')[['_stp_type':'Person']].Name.as('Owner').back(1).out('Owns').Type.as('Type').table().cap().next().unique() 

返回:

[ 
    [ 
     Jacky, 
     Diesel 
    ], 
    [ 
     Joan, 
     Diesel 
    ], 
    [ 
     Joan, 
     Gas 
    ] 
] 

獨特方法(在表類)需要防止從瓊具有每個天然氣爲動力的車輛的單獨條目。

+1

令人驚歎! .back(int)似乎不推薦使用,所以我使用了一個命名的。 – Joan