2013-01-10 70 views
58

我知道這個問題是很多人都已經
我的研究問Neo4j的所有節點和關係,這裏的一些問題要問前刪除1.8

  1. How to delete all relationships in neo4j graph?
  2. https://groups.google.com/forum/#!topic/neo4j/lgIaESPgUgE

但畢竟還是不能解決我們的問題,
我們只是想刪除「ALL」節點和「ALL」關係

enter image description here

假設刪除「ALL」可以看到有留0節點0的屬性和0的關係

這是我花了執行刪除後的截圖「ALL」通過論壇提出

我的問題仍然是一樣的,如何刪除neo4j中的所有節點和所有關係

回答

171

作爲2.3.0和高達3.3.0

MATCH (n) 
DETACH DELETE n 

Docs

預2.3.0

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

Docs

+1

在2.0.1中正常工作 – Leabdalla

+2

Neo4j文檔中的這個示例雖然說:「這個查詢不是用於刪除大量數據,但是當用小的示例數據集來玩時很好。」不知道是否最好做MATCH() - [r] - ()DELETE r然後做MATCH(n)DELETE n –

+2

@GeorgeBirbilis,爲了在大量數據上做到這一點,必須將操作分解爲多個事務並且必須實施重新嘗試機制。 –

6

您可能正在做它正確,只有儀表板顯示更高的ID採取,因此「活躍」節點的數量,關係,儘管沒有。它只是提供信息。

,以確保你有一個空圖,運行這個命令:

START n=node(*) return count(n); 
START r=rel(*) return count(r); 

如果同時給你0,你缺失succesfull。

+0

你,這是真的,但儀表板沒有表現出既不高,也不是最高的ID –

+0

是的,這是他們編程的方式 - 因爲當你有一個擁有兩百個節點的集羣,喲你不想手動計算它們。但在某處我看到有人正在更深入地研究這個問題,並做出一些JavaScript修復,也許如果你會幸運的話,你會在谷歌的帖子。 – ulkas

-1

將一個大的數據庫做的伎倆..

Match (n)-[r]-() 
Delete n,r; 
+0

這與已接受的答案有什麼不同? –

+0

@TomRedfern更短! XD –

+4

這不會刪除沒有關係的節點,這與加寬的答案不同 – Protongun