Как игнорировать значение yield из хранимой процедуры java в cypher (neo4j)?

У меня есть оператор CYPHER, который сначала почти соответствует каждому узлу в моем графике.

MATCH (n:node) CALL procedure(n) YIELD node RETURN node

Это взрывает мою память (внутри python), потому что ответ такой большой. Если мне не нужно возвращаемое значение процедуры, можно ли указать neo4j с помощью шифра не возвращать его?

Когда я пробую такие вещи, как YIELD NULL RETURN NULL или аналогичные варианты, я получаю ошибки.


person spanishgum    schedule 23.07.2016    source источник


Ответы (2)


Исходя из моего опыта работы с хранимыми процедурами Neo4J, вы должны признать доходность процедуры, но вам не обязательно ее использовать. Например:

MATCH (n:node) CALL procedure(n) YIELD node return null limit 1;

Предел 1 предназначен для предотвращения возврата значения NULL, несмотря на то, что процедура возвращает много результатов.

person JP Dhabolt    schedule 27.07.2016

Ты пробовал

MATCH (n:node) CALL procedure(n) YIELD node RETURN count(node)

Набор результатов - это только целое число.

person Stefan Armbruster    schedule 23.07.2016