explain.depesz.com

PostgreSQL's explain analyze made readable

Result: C2Um

Settings
# exclusive inclusive rows x rows loops node
1. 1.591 20.787 ↓ 296.0 296 1

Nested Loop Left Join (cost=2.43..165.38 rows=1 width=2,781) (actual time=0.199..20.787 rows=296 loops=1)

2. 0.601 19.196 ↓ 296.0 296 1

Nested Loop Left Join (cost=2.29..163.86 rows=1 width=1,931) (actual time=0.165..19.196 rows=296 loops=1)

3. 0.765 17.707 ↓ 296.0 296 1

Nested Loop Left Join (cost=2.14..162.71 rows=1 width=1,905) (actual time=0.154..17.707 rows=296 loops=1)

4. 6.344 16.350 ↓ 296.0 296 1

Nested Loop Left Join (cost=1.99..161.30 rows=1 width=1,690) (actual time=0.145..16.350 rows=296 loops=1)

  • Join Filter: (((pint.payment_type_id)::character varying(20))::text = (ft.payee_payment_type_id)::text)
  • Rows Removed by Join Filter: 10360
5. 0.462 5.270 ↓ 296.0 296 1

Nested Loop Left Join (cost=1.99..148.00 rows=1 width=1,512) (actual time=0.121..5.270 rows=296 loops=1)

6. 0.199 4.216 ↓ 74.0 74 1

Nested Loop Left Join (cost=1.57..139.54 rows=1 width=1,497) (actual time=0.108..4.216 rows=74 loops=1)

7. 0.254 3.277 ↓ 74.0 74 1

Nested Loop Left Join (cost=1.14..131.09 rows=1 width=1,495) (actual time=0.093..3.277 rows=74 loops=1)

8. 0.192 2.283 ↓ 74.0 74 1

Nested Loop (cost=0.71..122.63 rows=1 width=1,448) (actual time=0.077..2.283 rows=74 loops=1)

9. 0.207 1.943 ↓ 74.0 74 1

Nested Loop (cost=0.57..114.46 rows=1 width=1,274) (actual time=0.069..1.943 rows=74 loops=1)

10. 0.098 0.774 ↓ 74.0 74 1

Nested Loop (cost=0.14..106.00 rows=1 width=1,229) (actual time=0.042..0.774 rows=74 loops=1)

  • Join Filter: ((ft.payer_payment_type_id)::text = ((pin.payment_type_id)::character varying(20))::text)
11. 0.017 0.017 ↑ 1.0 1 1

Index Scan using idx_sub_payment_type_name on dim_payinstrument pin (cost=0.14..8.16 rows=1 width=182) (actual time=0.016..0.017 rows=1 loops=1)

  • Index Cond: ((sub_payment_type_name)::text = 'Normal'::text)
  • Filter: ((payment_instrument)::text = 'WALLET'::text)
12. 0.080 0.659 ↑ 1.0 74 1

Append (cost=0.00..96.36 rows=74 width=1,051) (actual time=0.018..0.659 rows=74 loops=1)

13. 0.063 0.063 ↑ 1.0 8 1

Seq Scan on fact_transaction_header_jan_03_2019_000 ft (cost=0.00..8.77 rows=8 width=1,067) (actual time=0.017..0.063 rows=8 loops=1)

  • Filter: ((transfer_date >= '2019-01-03 00:00:00'::timestamp without time zone) AND (transfer_date < '2019-01-04 00:00:00'::timestamp without time zone) AND ((servicetype)::text = 'MERCHPAY (...)
  • Rows Removed by Filter: 93
14. 0.074 0.074 ↑ 1.0 10 1

Seq Scan on fact_transaction_header_jan_03_2019_001 ft_1 (cost=0.00..11.24 rows=10 width=1,066) (actual time=0.018..0.074 rows=10 loops=1)

  • Filter: ((transfer_date >= '2019-01-03 00:00:00'::timestamp without time zone) AND (transfer_date < '2019-01-04 00:00:00'::timestamp without time zone) AND ((servicetype)::text = 'MERCHPAY (...)
  • Rows Removed by Filter: 118
15. 0.011 0.020 ↑ 1.0 2 1

Bitmap Heap Scan on fact_transaction_header_jan_03_2019_002 ft_2 (cost=4.16..9.19 rows=2 width=1,028) (actual time=0.016..0.020 rows=2 loops=1)

  • Recheck Cond: ((servicetype)::text = 'MERCHPAY'::text)
  • Filter: ((transfer_date >= '2019-01-03 00:00:00'::timestamp without time zone) AND (transfer_date < '2019-01-04 00:00:00'::timestamp without time zone))
  • Heap Blocks: exact=2
16. 0.009 0.009 ↑ 1.0 2 1

Bitmap Index Scan on idx_servicetype_jan_03_2019_002 (cost=0.00..4.16 rows=2 width=0) (actual time=0.009..0.009 rows=2 loops=1)

  • Index Cond: ((servicetype)::text = 'MERCHPAY'::text)
17. 0.071 0.071 ↑ 1.0 12 1

Seq Scan on fact_transaction_header_jan_03_2019_003 ft_3 (cost=0.00..10.03 rows=12 width=1,027) (actual time=0.015..0.071 rows=12 loops=1)

  • Filter: ((transfer_date >= '2019-01-03 00:00:00'::timestamp without time zone) AND (transfer_date < '2019-01-04 00:00:00'::timestamp without time zone) AND ((servicetype)::text = 'MERCHPAY (...)
  • Rows Removed by Filter: 104
18. 0.073 0.073 ↑ 1.0 11 1

Seq Scan on fact_transaction_header_jan_03_2019_004 ft_4 (cost=0.00..11.35 rows=11 width=1,066) (actual time=0.022..0.073 rows=11 loops=1)

  • Filter: ((transfer_date >= '2019-01-03 00:00:00'::timestamp without time zone) AND (transfer_date < '2019-01-04 00:00:00'::timestamp without time zone) AND ((servicetype)::text = 'MERCHPAY (...)
  • Rows Removed by Filter: 123
19. 0.058 0.058 ↑ 1.0 8 1

Seq Scan on fact_transaction_header_jan_03_2019_005 ft_5 (cost=0.00..8.77 rows=8 width=1,065) (actual time=0.019..0.058 rows=8 loops=1)

  • Filter: ((transfer_date >= '2019-01-03 00:00:00'::timestamp without time zone) AND (transfer_date < '2019-01-04 00:00:00'::timestamp without time zone) AND ((servicetype)::text = 'MERCHPAY (...)
  • Rows Removed by Filter: 93
20. 0.064 0.064 ↑ 1.0 9 1

Seq Scan on fact_transaction_header_jan_03_2019_006 ft_6 (cost=0.00..10.17 rows=9 width=1,028) (actual time=0.012..0.064 rows=9 loops=1)

  • Filter: ((transfer_date >= '2019-01-03 00:00:00'::timestamp without time zone) AND (transfer_date < '2019-01-04 00:00:00'::timestamp without time zone) AND ((servicetype)::text = 'MERCHPAY (...)
  • Rows Removed by Filter: 115
21. 0.048 0.048 ↑ 1.0 2 1

Seq Scan on fact_transaction_header_jan_03_2019_007 ft_7 (cost=0.00..8.82 rows=2 width=1,066) (actual time=0.036..0.048 rows=2 loops=1)

  • Filter: ((transfer_date >= '2019-01-03 00:00:00'::timestamp without time zone) AND (transfer_date < '2019-01-04 00:00:00'::timestamp without time zone) AND ((servicetype)::text = 'MERCHPAY (...)
  • Rows Removed by Filter: 102
22. 0.054 0.054 ↑ 1.0 6 1

Seq Scan on fact_transaction_header_jan_03_2019_008 ft_8 (cost=0.00..8.86 rows=6 width=1,028) (actual time=0.015..0.054 rows=6 loops=1)

  • Filter: ((transfer_date >= '2019-01-03 00:00:00'::timestamp without time zone) AND (transfer_date < '2019-01-04 00:00:00'::timestamp without time zone) AND ((servicetype)::text = 'MERCHPAY (...)
  • Rows Removed by Filter: 100
23. 0.054 0.054 ↑ 1.0 6 1

Seq Scan on fact_transaction_header_jan_03_2019_009 ft_9 (cost=0.00..8.80 rows=6 width=1,065) (actual time=0.020..0.054 rows=6 loops=1)

  • Filter: ((transfer_date >= '2019-01-03 00:00:00'::timestamp without time zone) AND (transfer_date < '2019-01-04 00:00:00'::timestamp without time zone) AND ((servicetype)::text = 'MERCHPAY (...)
  • Rows Removed by Filter: 97
24. 0.962 0.962 ↑ 1.0 1 74

Index Scan using idx_dim_user_user_id on dim_user u (cost=0.43..8.45 rows=1 width=86) (actual time=0.013..0.013 rows=1 loops=74)

  • Index Cond: ((user_id)::text = (ft.payer_user_id)::text)
  • Filter: ((partyacc_providerdimid = 101) AND ((user_type)::text = 'SUBSCRIBER'::text))
25. 0.148 0.148 ↑ 1.0 1 74

Index Scan using idx_providerid on dim_provider p (cost=0.14..8.16 rows=1 width=182) (actual time=0.001..0.002 rows=1 loops=74)

  • Index Cond: (provider_id = 101)
26. 0.740 0.740 ↑ 1.0 1 74

Index Scan using idx_dim_user_user_id on dim_user ue (cost=0.43..8.45 rows=1 width=68) (actual time=0.010..0.010 rows=1 loops=74)

  • Index Cond: ((ft.payee_user_id)::text = (user_id)::text)
27. 0.740 0.740 ↑ 1.0 1 74

Index Scan using idx_dim_user_user_id on dim_user scp (cost=0.43..8.45 rows=1 width=40) (actual time=0.010..0.010 rows=1 loops=74)

  • Index Cond: ((ft.scp_partyid)::text = (user_id)::text)
28. 0.592 0.592 ↓ 4.0 4 74

Index Scan using idx_dim_user_user_id on dim_user scpe (cost=0.43..8.45 rows=1 width=40) (actual time=0.005..0.008 rows=4 loops=74)

  • Index Cond: ((ft.scp_secpartyid)::text = (user_id)::text)
29. 4.736 4.736 ↑ 3.1 36 296

Seq Scan on dim_payinstrument pint (cost=0.00..11.10 rows=110 width=182) (actual time=0.001..0.016 rows=36 loops=296)

30. 0.592 0.592 ↑ 1.0 1 296

Index Scan using idx_trans_status on dim_transtatus dt (cost=0.14..1.41 rows=1 width=316) (actual time=0.002..0.002 rows=1 loops=296)

  • Index Cond: ((ft.transfer_status)::text = (tran_status_id)::text)
31. 0.888 0.888 ↑ 1.0 1 296

Index Scan using idx_service_type on dim_servicetype st (cost=0.15..1.14 rows=1 width=34) (actual time=0.002..0.003 rows=1 loops=296)

  • Index Cond: (((ft.servicetype)::text = (service_type)::text) AND ((service_type)::text = 'MERCHPAY'::text))
32. 0.000 0.000 ↓ 0.0 0 296

Index Scan using idx_bank_id on dim_bank bnk (cost=0.14..1.41 rows=1 width=136) (actual time=0.000..0.000 rows=0 loops=296)

  • Index Cond: ((ft.bank_id)::text = (bank_id)::text)