with dcard AS ( SELECT 'dcard' srce ,r.id ,r.logid --,r."Trans. Date" ,r."Post Date" ,r."Description" ,r."Amount" ,r."Category" ,r."Party" ,r."Reason" ,SUM(r."Amount") OVER (ORDER BY r."Post Date" asc , r."Description") + 1083.50 balance FROM tpsv.dcard_mapped r ORDER BY r."Post Date" desc ) ,hunt as ( SELECT 'hunt' srce ,r.id ,r.logid --,r."Reference Number" --,r."Payee Name" ,r."Date" ,r."Memo" ,r."Amount" ,r."Cateogry Name" ,r."Party" ,r."Reason" ,SUM(r."Amount") OVER (ORDER BY r."Date" asc , r.id) + 29909.75 balance FROM tpsv.hunt_mapped r ORDER BY r."Date" desc ) ,chase AS ( SELECT 'chase' srce ,r.id ,r.logid --,r."Trans Date" ,r."Post Date" ,r."Description" ,-r."Amount" "Amount" ,r."Type" ,null::text "Party" ,null::text "Reason" ,SUM(-r."Amount") OVER (ORDER BY r."Post Date" asc , r.id) + 374.23 balance FROM tpsv.chase_default r ORDER BY r."Post Date" desc ) ,stacked AS ( SELECT * FROM dcard UNION ALL SELECT * FROM hunt UNION ALL SELECT * FROM chase ) select * from stacked order by "Post Date" desc