2014-06-25 15 views
11

ho creato un nuovo nodo etichettato utentecome aggiungere una proprietà al nodo esistente neo4j cypher?

CREATE (n:User) 

voglio aggiungere una proprietà nome al mio nodo User ho provato da

MATCH (n { label: 'User' }) 
SET n.surname = 'Taylor' 
RETURN n 

, ma sembra che non sta interessando.

come posso aggiungere proprietà a un nodo già creato.

Grazie mille.

+0

Si dovrebbe accettare la risposta, credo;) – Rolf

+0

@Rolf Hey molto dispiaciuto, ho appena visto il tuo commento :) –

risposta

27

tua corrispondenza con l'etichetta non è corretta, la query deve essere:

MATCH (n:User) 
SET n.surname = 'Taylor' 
RETURN n 

Quello che hai scritto è: "match un utente la cui etichetta proprietà è utente". L'etichetta non è una proprietà, questa è una nozione a parte.

Come Michael accennato, se si desidera far corrispondere un nodo con una proprietà specifica, hai due alternative:

MATCH (n:User {surname: 'Some Surname'}) 

o:

MATCH (n:User) 
WHERE n.surname = 'Some Surname' 

Ora la combinata:

MATCH (n:User {surname: 'Some Surname'}) 
SET n.surname = 'Taylor' 
RETURN n 
+0

è fantastico. funziona, anche io voglio aggiungere la proprietà del cognome a un singolo Nodo chiamato utente usando l'ID, per favore dammi un aiuto anche per quello. Grazie mille –

+0

MATCH (n: Utente) WHERE n.firstname = 'Andres' SET n.surname = 'Taylor' RETURN n –

+1

o MATCH (n: Utente {firstname: 'Andres'}) SET n. surname = 'Taylor' RETURN n –

Problemi correlati