explain.depesz.com

PostgreSQL's explain analyze made readable

Result: GXatk

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

Hash Left Join (cost=2,563,383.58..3,010,095.66 rows=868,516 width=6,277) (actual rows= loops=)

  • Hash Cond: ((_aggr_mw_min_wlk_ek_gosp_baz_def.id = _aggr_mw_min_wlk_ek_gosp_baz.agregat_id) AND ((_hd_wopp.znak_sprawy)::text = (_aggr_mw_min_wlk_ek_gosp_baz.klucz)::text))
2. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=1,629,443.33..2,071,595.70 rows=868,516 width=6,244) (actual rows= loops=)

3. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=1,629,443.33..2,060,735.02 rows=868,516 width=5,446) (actual rows= loops=)

  • Hash Cond: ((_aggr_nieprawidlowosci_def.id = _aggr_nieprawidlowosci.agregat_id) AND ((_hd_kontrole.numer_producenta_kontrole)::text = (_aggr_nieprawidlowosci.klucz)::text))
4. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=831,330.03..1,258,062.01 rows=868,516 width=5,423) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=831,330.03..1,247,198.25 rows=868,516 width=4,509) (actual rows= loops=)

  • Hash Cond: ((_aggr_data_ostatniej_kontroli_def.id = _aggr_data_ostatniej_kontroli.agregat_id) AND ((_hd_kontrole.numer_producenta_kontrole)::text = (_aggr_data_ostatniej_kontroli.klucz)::text))
6. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=33,216.73..444,525.24 rows=868,516 width=4,486) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=33,216.73..433,661.47 rows=868,516 width=3,572) (actual rows= loops=)

  • Hash Cond: ((_hd_wop.wop_numer_etap)::text = (_hd_zlecenia_platnosci.wop_numer_etap)::text)
8. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=9,893.85..379,124.67 rows=868,516 width=3,410) (actual rows= loops=)

  • Hash Cond: ((_hd_wop.id)::text = (_hd_wop_ofsa4.id)::text)
9. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=9,139.18..376,089.88 rows=868,516 width=3,337) (actual rows= loops=)

10. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=9,138.62..219,193.00 rows=33,494 width=3,247) (actual rows= loops=)

  • Hash Cond: (((_hd_wopp.numer_producenta_wopp)::text = (_hd_umowy.numer_producenta_umowa)::text) AND ((_hd_wopp.wopp_numer_wniosku)::text = (_hd_umowy.wopp_numer_wniosku)::text))
11. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=6,627.97..216,263.66 rows=33,494 width=3,056) (actual rows= loops=)

  • Hash Cond: (((_hd_wopp.numer_producenta_wopp)::text = (_hd_wop.numer_producenta_wop)::text) AND ((_hd_wopp.wopp_numer_wniosku)::text = (_hd_wop.wopp_numer_wniosku)::text))
12. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=4,783.45..213,079.37 rows=33,494 width=2,877) (actual rows= loops=)

  • Hash Cond: ((_hd_wopp.id)::text = (_hd_wopp_ofsa4.id)::text)
13. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=3,196.88..211,404.87 rows=33,494 width=2,717) (actual rows= loops=)

  • Hash Cond: ((_hd_sprawy.znak_sprawy)::text = (_hd_wopp.znak_sprawy)::text)
14. 0.000 0.000 ↓ 0.0

Hash Right Join (cost=1,656.48..209,007.62 rows=32,118 width=2,599) (actual rows= loops=)

  • Hash Cond: (((_hd_beneficjenci.numer_producenta)::text = (_hd_sprawy.numer_producenta_sprawa)::text) AND ((_hd_beneficjenci.znak_sprawy)::text = (_hd_sprawy.znak_sprawy)::text))
15. 0.000 0.000 ↓ 0.0

Seq Scan on hd_beneficjenci _hd_beneficjenci (cost=0.00..189,976.17 rows=3,309,517 width=2,477) (actual rows= loops=)

16. 0.000 0.000 ↓ 0.0

Hash (cost=1,174.71..1,174.71 rows=32,118 width=122) (actual rows= loops=)

17. 0.000 0.000 ↓ 0.0

Seq Scan on hd_sprawy _hd_sprawy (cost=0.00..1,174.71 rows=32,118 width=122) (actual rows= loops=)

  • Filter: ((id_programu_pomocowego)::text = 'PROW1420__4.1.3_OFSA'::text)
18. 0.000 0.000 ↓ 0.0

Hash (cost=1,073.51..1,073.51 rows=37,351 width=118) (actual rows= loops=)

19. 0.000 0.000 ↓ 0.0

Seq Scan on hd_wopp _hd_wopp (cost=0.00..1,073.51 rows=37,351 width=118) (actual rows= loops=)

20. 0.000 0.000 ↓ 0.0

Hash (cost=1,165.14..1,165.14 rows=33,714 width=160) (actual rows= loops=)

21. 0.000 0.000 ↓ 0.0

Seq Scan on hd_wopp_ofsa4 _hd_wopp_ofsa4 (cost=0.00..1,165.14 rows=33,714 width=160) (actual rows= loops=)

22. 0.000 0.000 ↓ 0.0

Hash (cost=1,310.81..1,310.81 rows=35,581 width=179) (actual rows= loops=)

23. 0.000 0.000 ↓ 0.0

Seq Scan on hd_wop _hd_wop (cost=0.00..1,310.81 rows=35,581 width=179) (actual rows= loops=)

24. 0.000 0.000 ↓ 0.0

Hash (cost=2,049.91..2,049.91 rows=30,716 width=191) (actual rows= loops=)

25. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=979.11..2,049.91 rows=30,716 width=191) (actual rows= loops=)

  • Hash Cond: ((_hd_umowy.id)::text = (_hd_umowy_ofsa4.id)::text)
26. 0.000 0.000 ↓ 0.0

Seq Scan on hd_umowy _hd_umowy (cost=0.00..990.16 rows=30,716 width=139) (actual rows= loops=)

27. 0.000 0.000 ↓ 0.0

Hash (cost=595.16..595.16 rows=30,716 width=52) (actual rows= loops=)

28. 0.000 0.000 ↓ 0.0

Seq Scan on hd_umowy_ofsa4 _hd_umowy_ofsa4 (cost=0.00..595.16 rows=30,716 width=52) (actual rows= loops=)

29. 0.000 0.000 ↓ 0.0

Index Scan using hd_kontrole_numer_producenta_idx on hd_kontrole _hd_kontrole (cost=0.56..3.39 rows=129 width=90) (actual rows= loops=)

  • Index Cond: ((_hd_beneficjenci.numer_producenta)::text = (numer_producenta_kontrole)::text)
30. 0.000 0.000 ↓ 0.0

Hash (cost=492.63..492.63 rows=20,963 width=73) (actual rows= loops=)

31. 0.000 0.000 ↓ 0.0

Seq Scan on hd_wop_ofsa4 _hd_wop_ofsa4 (cost=0.00..492.63 rows=20,963 width=73) (actual rows= loops=)

32. 0.000 0.000 ↓ 0.0

Hash (cost=16,661.28..16,661.28 rows=532,928 width=162) (actual rows= loops=)

33. 0.000 0.000 ↓ 0.0

Seq Scan on hd_zlecenia_platnosci _hd_zlecenia_platnosci (cost=0.00..16,661.28 rows=532,928 width=162) (actual rows= loops=)

34. 0.000 0.000 ↓ 0.0

Materialize (cost=0.00..7.32 rows=1 width=914) (actual rows= loops=)

35. 0.000 0.000 ↓ 0.0

Seq Scan on hd_beneficjenci_agregaty_def _aggr_data_ostatniej_kontroli_def (cost=0.00..7.31 rows=1 width=914) (actual rows= loops=)

  • Filter: ((nazwa)::text = 'data_ostatniej_kontroli'::text)
36. 0.000 0.000 ↓ 0.0

Hash (cost=753,616.52..753,616.52 rows=2,966,452 width=23) (actual rows= loops=)

37. 0.000 0.000 ↓ 0.0

Seq Scan on hd_beneficjenci_agregaty_wyniki _aggr_data_ostatniej_kontroli (cost=0.00..753,616.52 rows=2,966,452 width=23) (actual rows= loops=)

38. 0.000 0.000 ↓ 0.0

Materialize (cost=0.00..7.32 rows=1 width=914) (actual rows= loops=)

39. 0.000 0.000 ↓ 0.0

Seq Scan on hd_beneficjenci_agregaty_def _aggr_nieprawidlowosci_def (cost=0.00..7.31 rows=1 width=914) (actual rows= loops=)

  • Filter: ((nazwa)::text = 'nieprawidlowosci'::text)
40. 0.000 0.000 ↓ 0.0

Hash (cost=753,616.52..753,616.52 rows=2,966,452 width=23) (actual rows= loops=)

41. 0.000 0.000 ↓ 0.0

Seq Scan on hd_beneficjenci_agregaty_wyniki _aggr_nieprawidlowosci (cost=0.00..753,616.52 rows=2,966,452 width=23) (actual rows= loops=)

42. 0.000 0.000 ↓ 0.0

Materialize (cost=0.00..4.23 rows=1 width=798) (actual rows= loops=)

43. 0.000 0.000 ↓ 0.0

Seq Scan on hd_sprawy_agregaty_def _aggr_mw_min_wlk_ek_gosp_baz_def (cost=0.00..4.22 rows=1 width=798) (actual rows= loops=)

  • Filter: ((nazwa)::text = 'mw_min_wlk_ek_gosp_baz'::text)
44. 0.000 0.000 ↓ 0.0

Hash (cost=890,761.70..890,761.70 rows=2,878,570 width=33) (actual rows= loops=)

45. 0.000 0.000 ↓ 0.0

Seq Scan on hd_sprawy_agregaty_wyniki _aggr_mw_min_wlk_ek_gosp_baz (cost=0.00..890,761.70 rows=2,878,570 width=33) (actual rows= loops=)