29
我第一次嘗試使用Neo4j。我正在使用2.0-RC1社區版。使用Cypher添加與現有節點的關係
我已經創造了一些節點:
MERGE (u:User{username:'admin',password:'admin'})
MERGE (r1:Role{name:'ROLE_ADMIN'})
MERGE (r2:Role{name:'ROLE_WEB_USER'})
MERGE (r3:Role{name:'ROLE_REST_USER'})
,現在我想添加的節點之間的關係。不過,我不要想清除用上面的腳本創建的現有數據庫,添加語句並再次運行它。我想添加關係到現有的節點。谷歌幫我找到這個:
START n=node(*), m=node(*)
where has(n.username) and has(m.name) and n.username = 'admin'
and m.name = 'ROLE_WEB_USER'
create (n)-[:HAS_ROLE]->(m)
哪些工作正常(即使我不明白所有的語法)。但是,我知道這會找到任何具有username屬性的節點以及具有name屬性的任何節點,而不是使用標籤來檢查它是否具有正確類型的節點。
如何使用標籤做同樣的事情?
r不是第二個節點變量名稱的最佳選擇,通常將r指定爲關係的變量名稱。 –