在Neo4j中,刪除數(shù)據(jù)可以通過Cypher查詢語言來實現(xiàn)。以下是一些基本的刪除操作:
- 刪除單個節(jié)點:
MATCH (n)
WHERE ID(n) = 1
DETACH DELETE n;
這條命令會刪除ID為1的節(jié)點及其所有關(guān)聯(lián)的關(guān)系。
- 刪除單個關(guān)系:
MATCH ()-[r]->()
WHERE ID(r) = 1
DELETE r;
這條命令會刪除ID為1的關(guān)系。
- 刪除具有特定屬性的節(jié)點:
MATCH (n:Person {name: 'John Doe'})
DETACH DELETE n;
這條命令會刪除所有名稱為"John Doe"的Person
節(jié)點。
- 刪除具有特定關(guān)系的節(jié)點:
MATCH (n)-[r]->(m)
WHERE type(r) = 'KNOWS' AND ID(m) = 1
DETACH DELETE n, r, m;
這條命令會刪除所有與ID為1的節(jié)點有KNOWS
關(guān)系的節(jié)點。
- 刪除滿足特定條件的所有節(jié)點和關(guān)系:
MATCH (n)
WHERE has(n.age) AND n.age > 30
DETACH DELETE n;
這條命令會刪除所有年齡大于30歲的節(jié)點及其關(guān)聯(lián)的關(guān)系。
在執(zhí)行刪除操作之前,請確保你有足夠的權(quán)限,并且最好先備份數(shù)據(jù)庫,以防萬一。此外,刪除操作是不可逆的,所以在執(zhí)行之前請仔細考慮。