QUERY PLAN
Aggregate (cost=2472.75..2472.76 rows=1 width=8)
-> Sort (cost=2457.75..2460.25 rows=1000 width=1588)
Sort Key: (date(tt.dt)) DESC
-> HashAggregate (cost=2395.42..2407.92 rows=1000 width=1588)
Group Key: tt.dt, p.day_at, p.user_id
-> Hash Left Join (cost=2375.17..2387.92 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=2351.20..2351.20 rows=1916 width=8)
-> Seq Scan on tbl_punch p (cost=0.00..2351.20 rows=1916 width=8)
Filter: (user_id = 1000)