在Gremlin中,如何按元素中的一个对将元素对分组?

时间:2018-11-16 00:44:25

标签: azure-cosmosdb gremlin

经过一些遍历后,我通过select()选择了我感兴趣的元素。如何将一个特定元素的属性之一分组。

我做了什么:

g.V() // ... some traversal happens here where I obtain a and b
select('a','b').by(valueMap('Name', 'Description', 'Label'))

现在,这可以获取我感兴趣的所有数据,例如:

[
  {
    "a": { "Name": "A name" ... },
    "b": { "Name": "other name" ... },
  }
  ...
]

但是我知道b.Name在不同的a,b对之间重复,因此我想将所有a元素归为同一b元素,我认为这应该很容易做到,但到目前为止我还做不到。

1 个答案:

答案 0 :(得分:0)

重写整个遍历可能更好,但是由于您将其保密,因此以下是进行后分组的方法:

g.V()...
  select('a','b').
    by(valueMap('Name', 'Description', 'Label')).
  group().
    by(select('b')).
    by(select('a').fold())