title: How to avoid a product in Neo4J Cypher query?
body: <p>I have the following Neo4J Cypher query:</p>
  
  <pre><code>MATCH (u:User{uid:'1819228'}), 
  (ctx:Context)-[:BY]-&gt;(u) 
  WITH DISTINCT ctx, u 
  MATCH (s:Statement)-[:IN]-&gt;(ctx), 
  (s)-[:BY]-&gt;(u) 
  RETURN DISTINCT s, ctx 
  ORDER BY s.timestamp ASC;
  </code></pre>
  
  <p>I have a feeling that something here is not efficient, because it runs pretty slow. Is it a case of creating a product with several query results?</p>
  
  <p>What would be the best way to optimize this query to get the results in the same form?</p>