title: Adding relationship to existing nodes with Cypher
body: <p>I'm trying out Neo4j for the first time. I'm using the 2.0-RC1 community edition.</p>
  
  <p>I've created some nodes:</p>
  
  <pre><code>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'})
  </code></pre>
  
  <p>and now I want to add relationships between the nodes. However, I <strong>don't</strong> want to clear out the existing database created with the script above, add the statements and run it again. I want to add relationships to the existing nodes. Google helped me find this:</p>
  
  <pre><code>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]-&gt;(m)
  </code></pre>
  
  <p>Which works fine (even though I don't understand all the syntax). However, I am aware that this finds any node with a username property and any node with a name property, instead of using labels to check that it has the right type of node.</p>
  
  <p>How can I do the same using labels?</p>