Vue d’ensemble
La clause delete()
est utilisée pour supprimer des nodes ou des edges qui répondent aux conditions données. Il est important de noter que la suppression d'un node entraîne la suppression de tous les edges qui y sont connectés.
L'opération de suppression est irréversible.
Syntaxe
// Supprimer des nodes
delete().nodes(<filtre>).limit(<N>)
// Supprimer des edges
delete().edges(<filtre>).limit(<N>)
- Les nodes ou edges à supprimer doivent répondre aux conditions spécifiées dans la méthode
nodes()
ouedges()
. Laissez vide pour spécifier tous les nodes ou edges. - Utilisez éventuellement la méthode
limit()
pour restreindre le nombre de nodes ou edges à supprimer. - Il n'est pas permis de définir un alias pour la clause.
Exemple de Graph
Exécutez ces UQLs ligne par ligne dans un graphset vide pour créer ce graph :
create().node_schema("user").edge_schema("follow")
create().node_property(@user, "name").node_property(@user, "age", int32).edge_property(@follow, "time", datetime)
insert().into(@user).nodes([{_id:"U001", _uuid:1, name:"Jason", age:30}, {_id:"U002", _uuid:2, name:"Tim"}, {_id:"U003", _uuid:3, name:"Grace", age:25}, {_id:"U004", _uuid:4, name:"Ted", age:26}])
insert().into(@follow).edges([{_uuid:1, _from_uuid:4, _to_uuid:1, time:"2021-9-10"}, {_uuid:2, _from_uuid:3, _to_uuid:2, time:"2020-3-12"}, {_uuid:3, _from_uuid:4, _to_uuid:2, time:"2023-7-30"}])
Exemples
Supprimer des Nodes
delete().nodes({name == "Grace"})
Le node avec _id
U003 est supprimé, ainsi que l'edge avec _uuid
2.
Supprimer des Edges
delete().edges({@follow})
Tous les edges @follow
sont supprimés.
Supprimer un Nombre Limité de Nodes
delete().nodes({@user.age > 26}).limit(2)
Cela supprime les nodes @user
dont les valeurs de property age
sont supérieures à 26, limité à deux nodes.