web-dev-qa-db-fra.com

Neo4j: Obtenez tous les nœuds dans un graphique, même ceux qui ne sont pas connectés par des relations

En utilisant Cypher, comment puis-je obtenir tous les nœuds dans un graphique? J'effectue des tests par rapport au graphique et j'ai des nœuds sans relations, j'ai donc du mal à créer une requête.

La raison pour laquelle je veux les obtenir tous est que je veux supprimer tous les nœuds du graphique au début de chaque test.

41
Aran Mulholland

Donc, cela vous donne tous les nœuds:

MATCH (n)
RETURN n;

Si vous souhaitez tout supprimer d'un graphique, vous pouvez faire quelque chose comme ceci:

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

Mis à jour pour 2.0+

Edit: Maintenant en 2.3, ils ont DETACH DELETE, vous pouvez donc faire quelque chose comme:

MATCH (n)
DETACH DELETE n;
83
Eve Freeman

Est-ce que cela fonctionnerait pour vous?

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

En supposant que vous disposez d'un index contenant ces nœuds orphelins.

13
Jason Sperske

Cela fonctionne très bien en 2.0:

    MATCH n RETURN n
5
boggle