Шифр отношения кардинальность


Есть ли способ сделать запрос шифра, который возвращает только исходящее отношение с мощностью 1, в neo4j 1.9.7?

Например

N2 ----> N4 -----> N10
|        |-------> N9
|
|------> N5 -----> N9
|
|------> N6 -----> N9  

В такой структуре я хотел бы обойти узлы и вернуть только те узлы, которые имеют только одно исходящее отношение (так что N5 и N6 в Примере).

Я могу сделать это с помощью Java API, используя класс IteratorUtil, чтобы получить count

Node process = db.getNodeById(2);

        for(Relationship rel : process.getRelationships(Direction.OUTGOING))
        {
            Node appProcess = rel.getOtherNode(process);
            if(IteratorUtil.count(appProcess.getRelationships(Direction.OUTGOING).iterator()) == 1)
            {
                System.out.println(appProcess.getId()+" is a vital process");
                count++;
            }
        }

Я хотел бы сделать то же самое в Cypher.

1 3

1 ответ:

Не уверен, что это сработает, и на данный момент у меня нет 1.9, но он работал так же в прошлом.

START n=node(2)
MATCH (n)-->(m)
WHERE length((m)-->()) = 1
RETURN m