Save a collection of several rows into a file via Cypher APOC procedure

I'm trying to export some nodes from my graph and I use the following function

match (u:User)<-[:BY]-(c:Context{name:'network'})<-[:IN]-(s:Statement) with [u, c, s] as texts CALL apoc.export.csv.data(texts, [], "save.csv", {}) yield file return texts; 

It's supposed to save several user / context / statements rows into the file save.csv. While the texts outputs correctly several thousand rows, I only get one user, one context and one statement saved into the file.

Why is that and how could it be fixed?