2014-06-25 6 views
11

я создал новый узел с надписью UserКак добавить свойство к существующему узлу neo4j cypher?

CREATE (n:User) 

я хочу, чтобы добавить свойство имени моего пользователя узел я попытался его

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

, но, кажется, это не влияет.

Как добавить свойства к уже созданному узлу.

спасибо.

+0

Вы должны принять ответ, я думаю;) – Rolf

+0

@ Rolf Эй очень жаль, я только что видел ваш комментарий :) –

ответ

27

Вашего соответствия по меткам неверно, запрос должен быть:

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

То, что вы написали: «сопрягать пользователь, у которого метка свойства является Пользователем». Этикетка не является собственностью, это понятие отдельно.

Как уже упоминалось Майкл, если вы хотите, чтобы соответствовать узлу с определенным свойством, у вас есть два варианта:

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

или:

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

Теперь комбо:

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

это замечательно. он работает, также я хочу добавить свойство фамилии к одному узлу с именем пользователя, используя идентификатор, пожалуйста, также помогите мне. Большое спасибо –

+0

MATCH (п: Пользователь) WHERE n.firstname = 'Andres' SET n.surname = 'Taylor' ВОЗВРАТ п –

+1

или MATCH (п: Пользователь {имя:: 'Andres'}) SET п. surname = 'Taylor' RETURN n –

Смежные вопросы