explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 5Oww

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

Nested Loop Left Join (cost=1,053.36..4,518.16 rows=1 width=3,286) (actual rows= loops=)

  • Join Filter: (sc.mamelle_id = bm.id)
  • Filter: (((dg.code)::text = ANY ('{ng,pg,g}'::text[])) OR ((bm.code)::text ~~* 'm%'::text))
2. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=953.36..4,336.87 rows=1 width=3,310) (actual rows= loops=)

  • Join Filter: (sc.gestation_id = dg.id)
3. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=853.36..4,164.73 rows=1 width=3,286) (actual rows= loops=)

  • Join Filter: (ss.id_sighting = sc.sighting_id)
4. 0.000 0.000 ↓ 0.0

Nested Loop (cost=753.36..3,958.05 rows=1 width=3,278) (actual rows= loops=)

  • Join Filter: (((ds.codesp)::text = (gite.codesp)::text) AND (gite.geom ~ st_transform(s2.geom, 2154)) AND _st_contains(gite.geom, st_transform(s2.geom, 2154)))
5. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on cs_gite_tampon gite (cost=152.63..3,136.56 rows=1 width=574) (actual rows= loops=)

  • Recheck Cond: ((codesp)::text = ANY ('{murmur,myobly,myomyo,rhifer,myoema}'::text[]))
  • Filter: (id IS NULL)
6. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on cs_gite_tampon_codesp_idx (cost=0.00..152.62 rows=8,427 width=0) (actual rows= loops=)

  • Index Cond: ((codesp)::text = ANY ('{murmur,myobly,myomyo,rhifer,myoema}'::text[]))
7. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=600.74..810.14 rows=42 width=3,278) (actual rows= loops=)

  • Hash Cond: (ses.contact_id = c2.id)
8. 0.000 0.000 ↓ 0.0

Hash Join (cost=470.76..678.64 rows=18 width=3,136) (actual rows= loops=)

  • Hash Cond: (s2.id_place = ses.place_id)
9. 0.000 0.000 ↓ 0.0

Foreign Scan (cost=100.00..306.64 rows=212 width=1,240) (actual rows= loops=)

  • Relations: ((foreign_dbchiro.sights_place s2) LEFT JOIN (foreign_dbchiro.dicts_typeplace typeplace)) LEFT JOIN (foreign_dbchiro.geodata_municipality m2)
10. 0.000 0.000 ↓ 0.0

Hash (cost=370.55..370.55 rows=17 width=1,904) (actual rows= loops=)

11. 0.000 0.000 ↓ 0.0

Hash Join (cost=219.50..370.55 rows=17 width=1,904) (actual rows= loops=)

  • Hash Cond: (ss.session_id = ses.id_session)
12. 0.000 0.000 ↓ 0.0

Foreign Scan (cost=100.00..250.31 rows=46 width=1,578) (actual rows= loops=)

  • Relations: ((foreign_dbchiro.sights_sighting ss) INNER JOIN (foreign_dbchiro.dicts_specie ds)) LEFT JOIN (foreign_dbchiro.accounts_profile a)
13. 0.000 0.000 ↓ 0.0

Hash (cost=118.55..118.55 rows=76 width=334) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

Foreign Scan on sights_session ses (cost=100.00..118.55 rows=76 width=334) (actual rows= loops=)

  • Filter: (date_part('year'::text, (date_start)::timestamp without time zone) > '2010'::double precision)
15. 0.000 0.000 ↓ 0.0

Hash (cost=124.10..124.10 rows=470 width=150) (actual rows= loops=)

16. 0.000 0.000 ↓ 0.0

Foreign Scan on dicts_contact c2 (cost=100.00..124.10 rows=470 width=150) (actual rows= loops=)

17. 0.000 0.000 ↓ 0.0

Foreign Scan on sights_countdetail sc (cost=100.00..178.25 rows=2,275 width=12) (actual rows= loops=)

18. 0.000 0.000 ↓ 0.0

Foreign Scan on dicts_biomgestation dg (cost=100.00..153.86 rows=1,462 width=32) (actual rows= loops=)

19. 0.000 0.000 ↓ 0.0

Foreign Scan on dicts_biommamelle bm (cost=100.00..153.86 rows=1,462 width=32) (actual rows= loops=)