QUERY PLAN
Limit (cost=99.92..99.97 rows=20 width=244)
-> Sort (cost=99.92..99.99 rows=27 width=244)
Sort Key: (CASE WHEN ((sub.verify_status = 0) OR (sub.stop_verify_status = 0) OR (sub.cancel_verify_status = 0)) THEN 1 ELSE 2 END), sub.created_at DESC
-> Result (cost=0.00..99.28 rows=27 width=244)
-> Append (cost=0.00..98.81 rows=27 width=240)
-> Subquery Scan on sub (cost=0.00..0.04 rows=1 width=154)
-> HashAggregate (cost=0.00..0.03 rows=1 width=162)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=79)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 2" (cost=97.63..97.69 rows=1 width=189)
-> Group (cost=97.63..97.68 rows=1 width=201)
Group Key: r.id, rvr.status, rsvr.status, rcvr.status
-> Sort (cost=97.63..97.64 rows=1 width=122)
Sort Key: r.id, rvr.status, rsvr.status, rcvr.status
-> Nested Loop Left Join (cost=0.00..97.62 rows=1 width=122)
Join Filter: (rsvr.erp_purchase_order_id = r.id)
Filter: ((rvr.user_id = 1000) OR (rsvr.user_id = 1000) OR (rcvr.user_id = 1000))
-> Nested Loop Left Join (cost=0.00..96.56 rows=1 width=126)
Join Filter: (rcvr.erp_purchase_order_id = r.id)
-> Nested Loop Left Join (cost=0.00..74.38 rows=1 width=118)
Join Filter: (rvr.erp_purchase_order_id = r.id)
-> Seq Scan on tbl_erp_purchase_orders r (cost=0.00..72.75 rows=1 width=110)
Filter: ((status <> 0) AND (created_at >= '2025-09-16 00:00:00+08'::timestamp with time zone) AND (created_at <= '2025-09-16 23:59:59+08'::timestamp with time zone))
-> Seq Scan on tbl_erp_purchase_order_verify_rels rvr (cost=0.00..1.61 rows=1 width=12)
Filter: (user_id = 1000)
-> Seq Scan on tbl_erp_purchase_order_cancel_verify_rels rcvr (cost=0.00..22.12 rows=5 width=12)
Filter: (user_id = 1000)
-> Seq Scan on tbl_erp_purchase_order_stop_verify_rels rsvr (cost=0.00..1.04 rows=1 width=12)
Filter: (user_id = 1000)
-> Subquery Scan on "*SELECT* 3" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=222)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 4" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=218)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 5" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=218)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 6" (cost=0.00..0.05 rows=1 width=197)
-> HashAggregate (cost=0.00..0.04 rows=1 width=209)
Group Key: id, status, status, status
-> Result (cost=0.00..0.00 rows=0 width=130)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 7" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=222)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 8" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=222)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 9" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=226)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 10" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=226)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 11" (cost=0.00..0.04 rows=1 width=141)
-> HashAggregate (cost=0.00..0.03 rows=1 width=149)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=110)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 12" (cost=0.00..0.04 rows=1 width=140)
-> HashAggregate (cost=0.00..0.03 rows=1 width=148)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=110)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 13" (cost=0.00..0.04 rows=1 width=143)
-> HashAggregate (cost=0.00..0.03 rows=1 width=151)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=104)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 14" (cost=0.00..0.04 rows=1 width=133)
-> HashAggregate (cost=0.00..0.03 rows=1 width=141)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=94)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 15" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=218)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 16" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=218)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 17" (cost=0.00..0.04 rows=1 width=149)
-> HashAggregate (cost=0.00..0.03 rows=1 width=157)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=111)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 18" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=259)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 19" (cost=0.00..0.04 rows=1 width=124)
-> HashAggregate (cost=0.00..0.03 rows=1 width=132)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=93)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 20" (cost=0.00..0.04 rows=1 width=133)
-> HashAggregate (cost=0.00..0.03 rows=1 width=141)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=102)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 21" (cost=0.00..0.05 rows=1 width=297)
-> HashAggregate (cost=0.00..0.04 rows=1 width=309)
Group Key: id, status, status, status
-> Result (cost=0.00..0.00 rows=0 width=230)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 22" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=251)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 23" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=251)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 24" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=251)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 25" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=251)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 26" (cost=0.00..0.04 rows=1 width=297)
-> HashAggregate (cost=0.00..0.03 rows=1 width=305)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=251)
One-Time Filter: false
-> Subquery Scan on "*SELECT* 27" (cost=0.00..0.05 rows=1 width=215)
-> HashAggregate (cost=0.00..0.04 rows=1 width=223)
Group Key: id, status, status
-> Result (cost=0.00..0.00 rows=0 width=113)
One-Time Filter: false