query 1:
MATCH (s1:Station)-[:DirectLineTo]->(s2:Station)-[:In]->(n1:Neighborhood{Name:'Hadar'})
WITH collect(s1) as Stations
MATCH (n:Neighborhood)
WHERE ALL (x in Stations where NOT (x)-[:In]->(n))
RETURN n.name
query 2:
match (n:Neighborhood)
where NOT EXISTS ( (n)<-[:In]-(: Station) -[:DirectLineTo]->(:Station)-[:In]->(:Neighborhood {name : 'Hadar'}) )
return n.name
If so, why would you use one over the other? Which one is more efficient?