title: MATCH clause with filtering properties or MATCH with a WHERE clause?
body: <p>I just have a very simple question to ask. Assume the sample movie database provided by neo4j and the following two queries:</p>
  
  <pre><code>MATCH (n:Person)-[:ACTED_IN]-&gt;(m:Movie {title:"The Matrix"}) 
  RETURN n,m
  </code></pre>
  
  <p>and</p>
  
  <pre><code>MATCH (n:Person)-[:ACTED_IN]-&gt;(m:Movie) 
  WHERE m.title = "The Matrix" 
  RETURN n,m
  </code></pre>
  
  <p>Are the two queries computationally equivalent or is it the case that the first case is more efficient?</p>
  
  <p>The way I see it, it seems like in the first case, MATCH produces the requested subgraph "on-the-fly" while traversing the original graph. In the second case though, a larger sub-graph is produced by MATCH which is then reduced to the requested one, once the redundant nodes are filtered, right? Can anybody somehow corroborate this assumption, or is it false?</p>