Neo4j - Imposta clausola

Utilizzando la clausola Set, è possibile aggiungere nuove proprietà a un nodo o una relazione esistente e anche aggiungere o aggiornare i valori delle proprietà esistenti.

In questo capitolo, discuteremo come:

  • Imposta una proprietà
  • Rimuovi una proprietà
  • Imposta più proprietà
  • Imposta un'etichetta su un nodo
  • Imposta più etichette su un nodo

Impostazione di una proprietà

Utilizzando la clausola SET, è possibile creare una nuova proprietà in un nodo.

Sintassi

Di seguito è riportata la sintassi per impostare una proprietà.

MATCH (node:label{properties . . . . . . . . . . . . . . }) 
SET node.property = value 
RETURN node

Esempio

Prima di procedere con l'esempio, creare prima un nodo denominato Dhawan come mostrato di seguito.

CREATE (Dhawan:player{name: "shikar Dhawan", YOB: 1985, POB: "Delhi"})

Di seguito è riportato un esempio di Cypher Query per creare una proprietà denominata "highestscore" con valore "187" .

MATCH (Dhawan:player{name: "shikar Dhawan", YOB: 1985, POB: "Delhi"}) 
SET Dhawan.highestscore = 187 
RETURN Dhawan

Per eseguire la query di cui sopra, eseguire i seguenti passaggi:

Step 1- Apri l'app desktop Neo4j e avvia il server Neo4j. Apri l'app browser integrata di Neo4j utilizzando l'URLhttp://localhost:7474/ come mostrato nello screnshot seguente.

Step 2 - Copiare e incollare la query desiderata nel prompt del dollaro e premere il pulsante di riproduzione (per eseguire la query) evidenziato nella schermata seguente.

Risultato

All'esecuzione, otterrai il seguente risultato. Qui puoi osservare che una proprietà con una coppia chiave-valore highestscore / 187 viene creata nel nodo denominato "Dhawan".

Rimozione di una proprietà

Puoi rimuovere una proprietà esistente passando NULL come valore ad esso.

Sintassi

Di seguito è riportata la sintassi per rimuovere una proprietà da un nodo utilizzando la clausola SET.

MATCH (node:label {properties}) 
SET node.property = NULL 
RETURN node

Esempio

Prima di procedere con l'esempio, creare prima un nodo "jadeja" come mostrato di seguito.

Create (Jadeja:player {name: "Ravindra Jadeja", YOB: 1988, POB: "NavagamGhed"})

Di seguito è riportato un esempio di Cypher Query che rimuove la proprietà denominata POB da questo nodo utilizzando la clausola SET come mostrato di seguito.

MATCH (Jadeja:player {name: "Ravindra Jadeja", YOB: 1988, POB: "NavagamGhed"}) 
SET Jadeja.POB = NULL 
RETURN Jadeja

Per eseguire la query di cui sopra, eseguire i seguenti passaggi:

Step 1- Apri l'app desktop Neo4j e avvia il server Neo4j. Apri l'app browser integrata di Neo4j utilizzando l'URLhttp://localhost:7474/ come mostrato nello screenshot seguente.

Step 2 - Copiare e incollare la query desiderata nel prompt del dollaro e premere il pulsante di riproduzione (per eseguire la query) evidenziato nella schermata seguente.

Risultato

All'esecuzione, otterrai il seguente risultato. Qui puoi osservare che la variabile denominataPOB è stato eliminato.

Impostazione di più proprietà

Allo stesso modo, puoi creare più proprietà in un nodo utilizzando la clausola Set. A tale scopo, è necessario specificare queste coppie di valori chiave con virgole.

Sintassi

Di seguito è riportata la sintassi per creare più proprietà in un nodo utilizzando la clausola SET.

MATCH (node:label {properties}) 
SET node.property1 = value, node.property2 = value 
RETURN node

Esempio

Di seguito è riportato un esempio di Cypher Query che crea più proprietà in un nodo utilizzando la clausola SET in Neo4j.

MATCH (Jadeja:player {name: "Ravindra Jadeja", YOB: 1988})  
SET Jadeja.POB: "NavagamGhed", Jadeja.HS = "90" 
RETURN Jadeja

Per eseguire la query di cui sopra, eseguire i seguenti passaggi:

Step 1- Apri l'app desktop Neo4j e avvia il server Neo4j. Apri l'app browser integrata di Neo4j utilizzando l'URLhttp://localhost:7474/ come mostrato nello screenshot seguente.

Step 2 - Copiare e incollare la query desiderata nel prompt del dollaro e premere il pulsante di riproduzione (per eseguire la query) evidenziato nella schermata seguente.

Risultato

All'esecuzione, otterrai il seguente risultato. Qui puoi osservare che sono state create proprietà denominate POB e HS.

Impostazione di un'etichetta su un nodo

È possibile impostare un'etichetta su un nodo esistente utilizzando la clausola SET.

Sintassi

Di seguito è riportata la sintassi per impostare un'etichetta su un nodo esistente.

MATCH (n {properties . . . . . . . }) 
SET n :label 
RETURN n

Esempio

Prima di procedere con l'esempio, creare innanzitutto un nodo "Anderson" come mostrato di seguito.

CREATE (Anderson {name: "James Anderson", YOB: 1982, POB: "Burnely"})

Di seguito è riportato un esempio di Cypher Query per impostare un'etichetta su un nodo utilizzando la clausola SET. Questa query aggiunge l'etichetta "player" al nodo Anderson e la restituisce.

MATCH (Anderson {name: "James Anderson", YOB: 1982, POB: "Burnely"}) 
SET Anderson: player 
RETURN Anderson

Per eseguire la query di cui sopra, eseguire i seguenti passaggi:

Step 1- Apri l'app desktop Neo4j e avvia il server Neo4j. Apri l'app browser integrata di Neo4j utilizzando l'URLhttp://localhost:7474/ come mostrato nello screenshot seguente.

Step 2 - Copiare e incollare la query desiderata nel prompt del dollaro e premere il pulsante di riproduzione (per eseguire la query) evidenziato nella schermata seguente.

Risultato

All'esecuzione, otterrai il seguente risultato. Qui puoi osservare che l'etichetta denominata "player" viene aggiunta al nodo.

Impostazione di più etichette su un nodo

È possibile impostare più etichette su un nodo esistente utilizzando la clausola SET. Qui è necessario specificare le etichette separandole con i due punti ":".

Sintassi

Di seguito è riportata la sintassi per impostare più etichette su un nodo esistente utilizzando la clausola SET.

MATCH (n {properties . . . . . . . }) 
SET n :label1:label2 
RETURN n

Esempio

Prima di procedere con l'esempio, creare prima un nodo denominato "Ishant" come mostrato di seguito.

CREATE (Ishant {name: "Ishant Sharma", YOB: 1988, POB: "Delhi"})

Di seguito è riportato un esempio di Cypher Query utilizzato per creare più etichette su un nodo utilizzando la clausola SET.

MATCH (Ishant {name: "Ishant Sharma", YOB: 1988, POB: "Delhi"}) 
SET Ishant: player:person 
RETURN Ishant

Per eseguire la query di cui sopra, eseguire i seguenti passaggi:

Step 1- Apri l'app desktop Neo4j e avvia il server Neo4j. Apri l'app browser integrata di Neo4j utilizzando l'URLhttp://localhost:7474/ come mostrato nello screenshot seguente.

Step 2 - Copiare e incollare la query desiderata nel prompt del dollaro e premere il pulsante di riproduzione (per eseguire la query) evidenziato nella schermata seguente.

Risultato

All'esecuzione, otterrai il seguente risultato. Qui puoi osservare che due etichette - persona e giocatore - vengono aggiunte al nodo denominatoIshant.