QUERY PLAN
Aggregate (cost=57.55..57.56 rows=1 width=8)
-> Sort (cost=54.55..55.05 rows=200 width=219)
Sort Key: (CASE WHEN ((rvr.status = 0) AND (r.next_verify_user = 1000)) THEN 1 ELSE 0 END) DESC, (CASE WHEN ((crvr.status = 0) AND (r.next_cancel_verify_user = 1000)) THEN 1 ELSE 0 END) DESC, (CASE WHEN (r.status = ANY ('{1,5}'::integer[])) THEN 0 ELSE 1 END), r.created_at DESC
-> HashAggregate (cost=42.41..46.91 rows=200 width=219)
Group Key: r.id, CASE WHEN ((rvr.status = 0) AND (r.next_verify_user = 1000)) THEN 1 ELSE 0 END, CASE WHEN ((crvr.status = 0) AND (r.next_cancel_verify_user = 1000)) THEN 1 ELSE 0 END
-> Hash Right Join (cost=2.05..35.14 rows=970 width=22)
Hash Cond: (crvr.punch_overtime_id = r.id)
-> Seq Scan on tbl_punch_overtime_cancel_verify_rels crvr (cost=0.00..19.70 rows=970 width=8)
-> Hash (cost=2.04..2.04 rows=1 width=26)
-> Nested Loop (cost=0.00..2.04 rows=1 width=26)
Join Filter: (r.id = rvr.punch_overtime_id)
-> Seq Scan on tbl_punch_overtimes r (cost=0.00..1.01 rows=1 width=26)
-> Seq Scan on tbl_punch_overtime_verify_rels rvr (cost=0.00..1.01 rows=1 width=8)
Filter: (user_id = 1000)