У вас должно быть предложение WITH
между предложениями UNWIND
и MATCH
. Это должно работать:
MATCH (n:Mob)
WITH COUNT(n) as total, COLLECT(n) as nodes
UNWIND nodes as node
WITH total, node
WHERE 8000 < node.order < 8100
RETURN total, node
Однако это проще, если вы в порядке с получением единственного списка подходящих узлов вместо нескольких возвращаемых записей:
MATCH (n:Mob)
RETURN
COUNT(n) AS total,
[m IN COLLECT(n) WHERE 8000 < m.order < 8100] AS nodes, COUNT(n) AS total
[ОБНОВЛЕНИЕ]
Если вы также хотите выполнить эквивалент SKIP
и LIMIT
(при условии, что счетчики SKIP и LIMIT передаются как параметры skip
и limit
):
MATCH (n:Mob)
RETURN
COUNT(n) AS total,
[m IN COLLECT(n) WHERE 8000 < m.order < 8100][$skip..($skip+$limit)] AS nodes