Gremlin Python: подсчет вершин и их потомков в одном запросе

Я пытаюсь получить количество всех вершин с определенной меткой и всех ее дочерних элементов в одном запросе следующим образом:

g.V().hasLabel('folder').has('folder_name', 'root').as_('a', 'b').select('a', 'b').by(__.count()).by(__.in_('items_belongs_to_folder').count()).toList()

В идеале это должно вернуть [{a: 200, b: 400}], но вместо этого я получаю такой список:

[{a: 1, b: 0},{a: 1, b: 0},{a: 1, b: 0},{a: 1, b: 0},{a: 1, b: 0},{a: 1, b: 0},{a: 1, b: 0},....{a: 1, b: 0}]

Как именно добиться желаемого результата?

gremlinpython: 3.4.4 (последняя)

Python 3.7

база данных графа: AWS Neptune


person Raghav Jajodia    schedule 22.11.2019    source источник


Ответы (1)


Ты можешь попробовать:

g.V().hasLabel('folder').has('folder_name', 'root').fold()
.project('a', 'b')
.by(count(local))
.by(unfold().in_('items_belongs_to_folder').count())
person noam621    schedule 22.11.2019