Вопрос: Neo4j: получить все узлы в графе, даже те, которые не связаны отношениями


Используя Cypher, как я могу получить все узлы в графике? Я выполняю некоторое тестирование против графика, и у меня есть некоторые узлы без связей, поэтому мне не удается обработать запрос.

Причина, по которой я хочу получить их, - это то, что я хочу удалить все узлы в графе в начале каждого теста.


34


источник


Ответы:


Таким образом, это дает вам все узлы:

MATCH (n)
RETURN n;

Если вы хотите удалить все из графика, вы можете сделать что-то вроде этого:

MATCH (n)
OPTIONAL MATCH (n)-[r]-() 
DELETE n, r;

Обновлено для 2.0+

Редактировать: Теперь, в 2.3, они DETACH DELETE, поэтому вы можете сделать что-то вроде:

MATCH (n)
DETACH DELETE n;

68



Будет ли это работать для вас?

START a=node:index_name('*:*')

Предполагая, что у вас есть индекс с этими сиротскими узлами в них.


13



Это просто отлично работает в версии 2.0:

    MATCH n RETURN n

5