Как мне вернуть количество каждого типа отношений из apoc.path.subgraphall в neo4j?

Я работаю с базовым набором данных, который neo4j предоставляет с помощью команды :play movies.

Я пытаюсь сначала найти подграф, к которому подключены определенные узлы, что я и делаю с помощью этого вызова:

MATCH (movie:Movie) WHERE movie.title = "Cloud Atlas" CALL apoc.path.subgraphAll(movie, {}) YIELD nodes, relationships RETURN nodes, relationships;

Это возвращает все узлы и отношения в этом конкретном графе, и это нормально. Но я ищу способ получить количество каждого конкретного типа отношений на возвращаемом графике.

В верхней панели эти числа уже отображаются. например: ПРОСМОТРЕНО (9), ПРОИЗВЕДЕНО (15), НАПИСАНО (10) и т. д.

Как мне получить эти значения?


person hhurja    schedule 22.06.2018    source источник


Ответы (1)


Этот запрос вернет каждый тип отношения и счетчик для этого типа:

MATCH (movie:Movie) WHERE movie.title = "Cloud Atlas"
CALL apoc.path.subgraphAll(movie, {}) YIELD relationships 
UNWIND relationships AS r
RETURN TYPE(r) AS type_r, COUNT(*) AS num
person cybersam    schedule 22.06.2018