explain.depesz.com

PostgreSQL's explain analyze made readable

Result: j5JC : Bloackades_20200806

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

Gather (cost=1,652,958.47..6,444,397.55 rows=189,592 width=92) (actual rows= loops=)

  • Workers Planned: 2
2. 0.000 0.000 ↓ 0.0

Hash Join (cost=1,651,958.47..6,424,438.35 rows=78,997 width=92) (actual rows= loops=)

  • Hash Cond: ((pm.pm_intermediary_code)::text = (i.code)::text)
3. 0.000 0.000 ↓ 0.0

Parallel Hash Join (cost=1,651,956.66..6,424,204.76 rows=78,997 width=55) (actual rows= loops=)

  • Hash Cond: ((pm.pm_remark)::text = (s.remark)::text)
4. 0.000 0.000 ↓ 0.0

Parallel Hash Left Join (cost=1,532,422.11..6,287,495.07 rows=78,997 width=71) (actual rows= loops=)

  • Hash Cond: ((pm.external_reference)::text = (ei.reference)::text)
5. 0.000 0.000 ↓ 0.0

Parallel Hash Join (cost=1,527,418.28..6,278,771.71 rows=78,997 width=102) (actual rows= loops=)

  • Hash Cond: ((pm.pm_fundraiser = b.fundraiser_id) AND (br.id = b.blockade_register_id) AND ((pm.pm_medium)::text = (b.medium)::text) AND ((pm.pm_contact_type)::text = (b.contact_point_type)::text) AND (cp.id= b.contact_point_id))
6. 0.000 0.000 ↓ 0.0

Parallel Hash Join (cost=323,228.11..4,447,976.93 rows=9,488,732 width=124) (actual rows= loops=)

  • Hash Cond: ((pm.contact_point)::text = (cp.contact_point)::text)
7. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=542.17..3,567,793.37 rows=9,488,732 width=133) (actual rows= loops=)

  • Hash Cond: ((pm.input_file)::text = (f.name)::text)
8. 0.000 0.000 ↓ 0.0

Hash Join (cost=1.25..3,542,339.38 rows=9,488,732 width=153) (actual rows= loops=)

  • Hash Cond: ((pm.blockade_register)::text = (br.code)::text)
9. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on pa_migration_blockades pm (cost=0.00..3,507,833.65 rows=9,488,732 width=154) (actual rows= loops=)

  • Filter: (pm_fundraiser IS NOT NULL)
10. 0.000 0.000 ↓ 0.0

Hash (cost=1.11..1.11 rows=11 width=19) (actual rows= loops=)

11. 0.000 0.000 ↓ 0.0

Seq Scan on blockade_register br (cost=0.00..1.11 rows=11 width=19) (actual rows= loops=)

12. 0.000 0.000 ↓ 0.0

Hash (cost=316.52..316.52 rows=17,952 width=30) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Seq Scan on file f (cost=0.00..316.52 rows=17,952 width=30) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

Parallel Hash (cost=195,602.53..195,602.53 rows=6,921,953 width=22) (actual rows= loops=)

15. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on contact_point cp (cost=0.00..195,602.53 rows=6,921,953 width=22) (actual rows= loops=)

16. 0.000 0.000 ↓ 0.0

Parallel Hash (cost=622,413.90..622,413.90 rows=19,192,590 width=38) (actual rows= loops=)

17. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on blockade b (cost=0.00..622,413.90 rows=19,192,590 width=38) (actual rows= loops=)

18. 0.000 0.000 ↓ 0.0

Parallel Hash (cost=3,495.81..3,495.81 rows=45,681 width=143) (actual rows= loops=)

19. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on external_information ei (cost=0.00..3,495.81 rows=45,681 width=143) (actual rows= loops=)

20. 0.000 0.000 ↓ 0.0

Parallel Hash (cost=78,240.80..78,240.80 rows=2,135,580 width=28) (actual rows= loops=)

21. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on session s (cost=0.00..78,240.80 rows=2,135,580 width=28) (actual rows= loops=)

22. 0.000 0.000 ↓ 0.0

Hash (cost=1.36..1.36 rows=36 width=12) (actual rows= loops=)

23. 0.000 0.000 ↓ 0.0

Seq Scan on intermediary i (cost=0.00..1.36 rows=36 width=12) (actual rows= loops=)