首页 > 解决方案 > 如何按父母分组并在gremlin中收集孩子的所有属性值?

问题描述

我想将所有节目及其相关类型收集在一起。GENRES 是 SHOWS 的子关系

示例 gemlin graph 以便输出类似于:

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

示例图:https ://gremlify.com/x8i8stszn2

标签: gremlin

解决方案


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

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"
    ]
  }
]

推荐阅读