explain.depesz.com

PostgreSQL's explain analyze made readable

Result: rLeCk

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 0.000 ↓ 0.0

GroupAggregate (cost=14,210.06..14,210.08 rows=1 width=20) (actual rows= loops=)

  • Group Key: e.id, em.marketid, cbs.outcomeno
2. 0.000 0.000 ↓ 0.0

Sort (cost=14,210.06..14,210.06 rows=1 width=16) (actual rows= loops=)

  • Sort Key: e.id, em.marketid, cbs.outcomeno
3. 0.000 0.000 ↓ 0.0

Nested Loop (cost=2,423.12..14,210.05 rows=1 width=16) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

Nested Loop (cost=2,422.70..14,200.42 rows=1 width=24) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Nested Loop (cost=2,422.14..14,126.22 rows=1 width=28) (actual rows= loops=)

  • Join Filter: (em.marketid = cbs.marketid)
6. 0.000 0.000 ↓ 0.0

Nested Loop (cost=2,422.14..4,128.05 rows=1 width=12) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on event e (cost=2,421.72..3,778.73 rows=6 width=4) (actual rows= loops=)

  • Recheck Cond: ((state = ANY ('{Active,Blocked}'::eventstate[])) AND (issg = 1))
  • Filter: (eventdate > now())
8. 0.000 0.000 ↓ 0.0

BitmapAnd (cost=2,421.72..2,421.72 rows=715 width=0) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on eventstatei (cost=0.00..400.51 rows=17,289 width=0) (actual rows= loops=)

  • Index Cond: (state = ANY ('{Active,Blocked}'::eventstate[]))
10. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on eventlinkcodei (cost=0.00..2,020.95 rows=4,029 width=0) (actual rows= loops=)

  • Index Cond: (issg = 1)
11. 0.000 0.000 ↓ 0.0

Index Scan using eventid on eventmarket em (cost=0.42..58.20 rows=2 width=12) (actual rows= loops=)

  • Index Cond: (eventid = e.id)
  • Filter: ((marketstatus = 1) AND (sellenddate > now()))
12. 0.000 0.000 ↓ 0.0

Seq Scan on couponbetsg cbs (cost=0.00..9,920.30 rows=6,230 width=20) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Index Scan using eventmarket_odd_version on eventmarketodd emo (cost=0.56..74.10 rows=10 width=4) (actual rows= loops=)

  • Index Cond: (eventmarketid = em.id)
  • Filter: (status AND (fixedodds > '1'::numeric) AND ((state)::text = ANY ('{Active,Blocked}'::text[])))
14. 0.000 0.000 ↓ 0.0

Index Scan using coupon_newid_uidx on coupon c (cost=0.42..5.03 rows=1 width=8) (actual rows= loops=)

  • Index Cond: (newid = cbs.couponnewid)
  • Filter: ((coupontypeid = 5) AND ((status)::text = 'active'::text) AND ((state)::text = 'played'::text) AND (recorddate > ((now())::date - '15 days'::interval)))