QUERY PLAN
Aggregate (cost=2593.95..2593.96 rows=1 width=8)
-> Sort (cost=2578.95..2581.45 rows=1000 width=1588)
Sort Key: (date(tt.dt)) DESC
-> HashAggregate (cost=2516.62..2529.12 rows=1000 width=1588)
Group Key: tt.dt, p.day_at, p.user_id
-> Hash Left Join (cost=2496.37..2509.12 rows=1000 width=16)
Hash Cond: (date(tt.dt) = p.day_at)
-> Function Scan on generate_series tt (cost=0.02..10.02 rows=1000 width=8)
-> Hash (cost=2469.46..2469.46 rows=2151 width=8)
-> Seq Scan on tbl_punch p (cost=0.00..2469.46 rows=2151 width=8)
Filter: (user_id = 1000)