I'm pretty new to neo4j, and I'm working on optimizing my queries. For my
example, let's say we have a lot of 'Post' nodes that can grow in an
unbounded fashion. I'm using a linked-list to be able to scan back through
recent posts without consulting every node. This works, but my question has
to do with a minor semantic change that means the difference between
consulting LIMIT nodes, or ALL nodes. First, the bad one; this query
consults all Post nodes:
MATCH (r:Reference {id:
"latest"})-->(:Post)-[:PREVIOUS*0..]->(p)-[:MEMBER_OF]->(c:Category)
RETURN p, COLLECT(c.uuid) AS c LIMIT 50
However, this next query only consults only the last 50, as I'd like. Could
someone explain why putting the LIMIT on the WITH makes all the difference?
PROFILE MATCH (r:Reference {id:
"latest"})-->(:Post)-[:PREVIOUS*0..]->(p)-[:MEMBER_OF]->(c:Category)
WITH p, c LIMIT 50
RETURN p, COLLECT(c.uuid) AS c
Thanks in advance for any insight!
--
You received this message because you are subscribed to the Google Groups
"Neo4j" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.