我有一個MERGE查詢,其中我想合併一個節點(如果它存在或創建一個新節點,並且如果創建一個新節點,則創建一個新的關係鏈接新創建的節點,然後添加屬性的關係鏈接節點如何在MERGE ON CREATE SET查詢中添加新關係neo4j
這樣基本的東西:
MERGE (user:USER { userId : userId })
ON CREATE SET
user.password = password ,
user.userID = userID ,
(user)-[:INFO]->(userInfo:PROFILEINFO {firstname:'John',lastName:'Doe'})
RETURN user
但我無法弄清楚如何創建一個新的關係,因爲這顯示了一個錯誤。
如果用戶輸入新信息或更新關係,或者如果用戶不存在並創建新用戶,然後創建關係,則需要更新userInfo。
更新的關係是,如果usre是新創建的,你會建立同樣的關係?如果是這樣,那麼這種關係的合併是不是也一樣好?另外,還有什麼特別的理由讓姓和名保持在一個單獨的節點:USER? – InverseFalcon
@InverseFalcon是的,我認爲在合併中創建關係會產生預期的效果。我會盡力回覆你。 此外,我分手,因爲我將爲每個用戶指定不同的信息節點,具有相同的關係,如:PROFILEINFO,:PRIVACYINFO,:SECURITYINFO和所有類型的:用戶的信息,所以我想打破東西,而不是全部在單個節點 我想這會產生不必要的節點。 –
@InverseFalcon我應該遵循什麼結構?我是否將信息劃分到不同的節點或創建一個大型屬性對象,該對象包含該用戶的所有信息,包括配置文件,設置,隱私,帳戶等。 –