Welcome to Software Development on Codidact!
Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.
Union of queries depending on variable in list
I have a big Cypher query that is depending on a variable.
Example:
With REGION = 'Canada'
query
I want to execute this query several times based on different values on a list and return the UNION.
Something like:
regions = ['Canada','Europe']
query_with_Canada UNION query_with_Europe
Is there any way to achieve this in Cypher?
1 answer
Yes, you can achieve this using UNWIND
and CALL
, in the following pattern:
UNWIND ['Canada', 'Europe'] AS region
CALL {
WITH region
query
}
RETURN *
You can replace RETURN *
with any other end-of-query clause, of course, if you want to order or limit your results for example. But don't omit the WITH region
inside the CALL
subquery; without that explicit import, you won't be able to refer to region
(or any outer query variables) inside the subquery.
0 comment threads