Simple way - Using 'Select - action' for Columns and 'For each' - action to get combined Rows to get final Result: enter image description here
Workflow - Run Result
Workflow Description:
Manual Trigger added
Parse JSON - action to fetch your received data
Select - action added, to fetch the columns: to read 'name'
to read 'name' : select- range(0,length(first(outputs('Parse_JSON')?['body']?['tables'])?['columns']))
map - first(outputs('Parse_JSON')?['body']?['tables'])?['columns']?[item()]?['name']
4. Initialize an variable - append to get out put
5. Added for each action to read 'rows' datas towards selected item in the earlier step
6. Compose to get - final Primary Result
for each - first(outputs('Parse_JSON')?['body']?['tables'])?['rows']
select - range(0,length(body('Select_column')))
map - body('Select_column')?[item()] Vs items('For_each_rows')?[item()]