Dataview: How to list tasks, grouped by Folder, subgrouped by File?

What I’m trying to do

Hey all!
I have a “Projects” folder, with files for each project, and tasks within them.
I’m trying to use DataView to produce a nice, clean summary of the tasks in all my projects.

Things I have tried

I’ve gotten close to what I’m trying to achieve using DataView groupby.
The following code gets me the output shown below:
dataview TASK FROM "Projects" GROUP BY (file.folder +"/"+ file.link)

This is nearly what I’m after. The only difference is, I’d like it not to repeat the folder name - instead, to group by folders, and then by file. Kind of like a hierarchy view.

Is this possible using DataView alone?
Another possible solution I can think of is simply to loop through all the subfolders, and then use a DataView query on each. But I’m not sure how to do this currently.

Any suggestions would be warmly appreciated!