You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This requests an improvement to EXISTS(). Current EXISTS() performs expansion to verify if the pattern exists or not.
However, when run on certain patterns, EXISTS() should be able to optimize execution by checking the degree of a relationship.
For example:
PROFILE MATCH (p:Person{name:'Keanu Reeves'})
RETURN p, EXISTS((p)-[:ACTED_IN]->()) as actor
is more expensive than this:
PROFILE MATCH (p:Person{name:'Keanu Reeves'})
RETURN p, SIZE((p)-[:ACTED_IN]->()) <> 0 as actor
yet it's exactly the same kind of query. If EXISTS() can be optimized to take advantage of situations like these where a degree check could be performed instead, it would be a nice quality of life improvement.
The text was updated successfully, but these errors were encountered:
Noting that 3.2.0 addresses this request, though the WHERE clause with just the pattern and not using EXISTS still doesn't use the relationship degree.
Closing since the EXISTS optimization has been addressed.
This requests an improvement to EXISTS(). Current EXISTS() performs expansion to verify if the pattern exists or not.
However, when run on certain patterns, EXISTS() should be able to optimize execution by checking the degree of a relationship.
For example:
is more expensive than this:
yet it's exactly the same kind of query. If EXISTS() can be optimized to take advantage of situations like these where a degree check could be performed instead, it would be a nice quality of life improvement.
The text was updated successfully, but these errors were encountered: