title: Nodes with relationship to multiple nodes
body: <p>I want to get the Persons that know everyone in a group of persons which know some specific places.
  This:</p>
  
  <pre><code>MATCH (:Place {name:'Breiter Weg'})&lt;-[:knows]-(b:Person)-[:knows]-&gt;(:Place   {name:'Buchhandel'})
  WITH collect(DISTINCT b) as persons
  Match (a:Person)
  WHERE ALL(b in persons WHERE (a)-[:knows]-&gt;(b))
  RETURN a
  </code></pre>
  
  <p>works, but for the second part does a full nodelabelscan, before applying the where clause, which is extremely slow - in a bigger db it takes 8~9 seconds. I also tried this:</p>
  
  <pre><code>MATCH (:Place {name:'Breiter Weg'})&lt;-[:knows]-(b:Person)-[:knows]-&gt;(:Place {name:'Buchhandel'})
  Match (a:Person)-[:knows]-&gt;(b)
  RETURN a
  </code></pre>
  
  <p>This only needs 2ms, however it returns all persons that know any person of group b, instead of those that know everyone. </p>
  
  <p>So my question is: Is there a effective/fast query to get what i want?</p>