Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Neo4j - Löschen Sie einen Knoten mit Cypher

Um Knoten und Beziehungen mit Cypher zu löschen, verwenden Sie DELETE Klausel.

Das DELETE -Klausel innerhalb des MATCH verwendet wird Anweisung, alle übereinstimmenden Daten zu löschen.

Also das DELETE -Klausel wird an derselben Stelle verwendet, an der wir RETURN verwendet haben Klausel in unseren vorherigen Beispielen.

Beispiel

Die folgende Anweisung löscht das Album Knoten namens Killers :

MATCH (a:Album {Name: "Killers"}) DELETE a

Es empfiehlt sich, zu prüfen, ob Sie die richtigen Daten löschen, bevor Sie sie tatsächlich löschen.

Bauen Sie dazu Ihre Anweisung mit einem RETURN auf -Klausel zuerst und führen Sie sie dann aus. So können Sie überprüfen, ob Sie die richtigen Daten löschen oder nicht. Wenn Sie überzeugt sind, dass Sie die richtigen Daten gefunden haben, schalten Sie einfach den RETURN um -Klausel in ein DELETE Klausel.

Mehrere Knoten löschen

Sie können auch mehrere Knoten auf einmal löschen. Konstruieren Sie einfach Ihr MATCH -Anweisung, um alle Knoten einzuschließen, die Sie löschen möchten.

MATCH (a:Artist {Name: "Iron Maiden"}), (b:Album {Name: "Powerslave"}) 
DELETE a, b

Alle Knoten löschen

Sie können alle Knoten aus der Datenbank löschen, indem Sie einfach alle Filterkriterien weglassen. So wie wir alle Knoten aus der Datenbank ausgewählt haben, können Sie sie auch löschen.

MATCH (n) DELETE n

Knoten mit Beziehungen löschen

Es gibt einen kleinen Haken beim Löschen von Knoten. Das heißt, Sie können Knoten nur löschen, wenn sie keine Beziehungen haben. Mit anderen Worten, Sie müssen alle Beziehungen löschen, bevor Sie den Knoten selbst löschen.

Wenn Sie versuchen, das obige DELETE auszuführen -Anweisung auf Knoten, die Beziehungen haben, sehen Sie eine Fehlermeldung wie diese:

Diese Fehlermeldung teilt uns mit, dass wir alle Beziehungen löschen müssen, bevor wir den Knoten löschen.

Glücklicherweise gibt es dafür eine schnelle und einfache Möglichkeit. Wir werden es als nächstes beim Löschen von Beziehungen behandeln.