如何在gremlin中按父对象分组并收集子对象的所有属性值?

如何在gremlin中按父对象分组并收集子对象的所有属性值?,gremlin,Gremlin,我想收集所有的节目和它们相关的类型在一起。类型是节目的子关系 因此,输出类似于: "1" [a,b] "2" [c,d] 示例图:您可以使用Gremlin中的项目()完成此操作,如下所示: g.V("2789").out('WATCHED').hasLabel('SHOW'). project('show', 'genre'). by('NAME'). by(out('HAS_GENRE').values('NAME').f

我想收集所有的节目和它们相关的类型在一起。类型是节目的子关系

因此,输出类似于:

"1" [a,b]
"2" [c,d]

示例图:

您可以使用Gremlin中的
项目()完成此操作,如下所示:

g.V("2789").out('WATCHED').hasLabel('SHOW').
project('show', 'genre').
  by('NAME').
  by(out('HAS_GENRE').values('NAME').fold())
这将返回如下格式的数据:

[
  {
    "show": 1,
    "genre": [
      "a",
      "b"
    ]
  },
  {
    "show": 2,
    "genre": [
      "c",
      "d"
    ]
  }
]