sql >> Databáze >  >> RDS >> Mysql

Neo4j - Odstranění uzlu pomocí Cypher

Chcete-li odstranit uzly a vztahy pomocí Cypher, použijte DELETE doložka.

DELETE klauzule se používá v rámci MATCH prohlášení k vymazání všech nalezených dat.

Takže DELETE klauzule se používá na stejném místě, kde jsme použili RETURN klauzule v našich předchozích příkladech.

Příklad

Následující příkaz odstraní Album uzel s názvem Killers :

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

Před samotným smazáním je dobré zkontrolovat, zda se chystáte smazat správná data.

Chcete-li to provést, vytvořte svůj příkaz pomocí RETURN nejprve klauzule a poté ji spusťte. To vám umožní zkontrolovat, zda smažete správná data nebo ne. Jakmile budete spokojeni, že odpovídáte správným údajům, jednoduše přepněte RETURN klauzule do DELETE doložka.

Odstranění více uzlů

Můžete také odstranit více uzlů najednou. Jednoduše vytvořte svůj MATCH příkaz zahrnout všechny uzly, které chcete odstranit.

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

Odstranění všech uzlů

Všechny uzly můžete z databáze odstranit jednoduše vynecháním jakýchkoli kritérií filtrování. Stejně jako když jsme vybrali všechny uzly z databáze, můžete je také smazat.

MATCH (n) DELETE n

Odstranění uzlů se vztahy

Mazání uzlů má jeden malý háček. A to znamená, že uzly můžete odstranit pouze v případě, že nemají žádné vztahy. Jinými slovy, před odstraněním samotného uzlu musíte odstranit všechny vztahy.

Pokud se pokusíte provést výše uvedený příkaz DELETE na uzlech, které mají vztahy, uvidíte chybovou zprávu, jako je tato:

Tato chybová zpráva nám říká, že před odstraněním uzlu musíme odstranit všechny vztahy.

Naštěstí existuje rychlý a snadný způsob, jak to udělat. Dále se tomu budeme věnovat při odstraňování vztahů.


  1. MigrationSchemaMissing(Nelze vytvořit tabulku django_migrations (%s) % exc)

  2. Jak zobrazím seznam všech tabulek ve všech databázích na serveru SQL Server v jedné sadě výsledků?

  3. Jak získat název dne v týdnu z data?

  4. Jak mohu udělat něco jako:USE @databaseName