Как сгруппировать по родительскому элементу и собрать все значения свойств дочернего элемента в gremlin?

#gremlin

#gremlin

Вопрос:

Я хочу собрать все шоу и связанные с ними жанры вместе. ЖАНРЫ — это дочерние отношения ШОУ

Пример графа gemlin, чтобы на выходе было что-то похожее на:

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

Примерный график: https://gremlify.com/x8i8stszn2

Ответ №1:

Вы можете выполнить это, используя project() шаг в Gremlin следующим образом:

 g.V("2789").out('WATCHED').hasLabel('SHOW').
project('show', 'genre').
  by('NAME').
  by(out('HAS_GENRE').values('NAME').fold())
  

Это вернет ваши данные, отформатированные следующим образом this:

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