explain.depesz.com

PostgreSQL's explain analyze made readable

Result: BFpM : Optimization for: plan #E3qw

Settings

Optimization path:

Optimization(s) for this plan:

# exclusive inclusive rows x rows loops node
1. 0.103 4.910 ↓ 3.0 3 1

Result (cost=73.02..73.29 rows=1 width=2,173) (actual time=4.881..4.910 rows=3 loops=1)

  • Output: romeo_three1.juliet_delta, romeo_three1.oscar, romeo_three1.november_seven, romeo_three1.three_five, romeo_three1.foxtrot_bravo, romeo_three1.lima_romeo, romeo_three1.seven_seven, romeo_three2.juliet_delta, romeo_three2.three_zulu, CASE WHEN (quebec_echo(romeo_three2.quebec_bravo) > 1316) THEN romeo_three3.charlie ELSE NULL::character varying END, romeo_three1.mike
  • Buffers: shared hit=1,750
2.          

CTE juliet_six

3. 4.037 4.743 ↓ 3.0 3 1

Bitmap Heap Scan on two_india zulu_xray (cost=66.71..67.83 rows=1 width=295) (actual time=4.690..4.743 rows=3 loops=1)

  • Output: romeo_three1kilo_oscar1.quebec_seven, romeo_three1kilo_oscar1.delta_uniform_lima, romeo_three1kilo_oscar1.three_five, romeo_three1kilo_oscar1.seven_seven, romeo_three1kilo_oscar1.november_seven, romeo_three1kilo_oscar1.mike, romeo_three1kilo_oscar1.foxtrot_bravo, romeo_three1kilo_oscar1.golf_echo, romeo_three1kilo_oscar1.zulu_alpha, romeo_three1kilo_oscar1.oscar, romeo_three1kilo_oscar1.victor_tango, romeo_three1kilo_oscar1.lima_echo, romeo_three1kilo_oscar1.juliet_hotel, romeo_three1kilo_oscar1.lima_romeo, romeo_three1kilo_oscar1.november_romeo, romeo_three1kilo_oscar1.yankee_papa, romeo_three1kilo_oscar1.four_sierra, romeo_three1kilo_oscar1.juliet_delta, romeo_three1kilo_oscar1.papa, romeo_three1kilo_oscar1.two_romeo, romeo_three1kilo_oscar1.yankee_tango, romeo_three1kilo_oscar1.quebec_xray, romeo_three1kilo_oscar1.whiskey_five, romeo_three1kilo_oscar1.delta_uniform_two, romeo_three1kilo_oscar1.seven_bravo
  • Recheck Cond: ((romeo_three1kilo_oscar1.lima_echo = 657) AND ((romeo_three1kilo_oscar1.golf_echo)::text = 'uniform_delta'::text))
  • Filter: ((NOT romeo_three1kilo_oscar1.seven_seven) AND ((NOT romeo_three1kilo_oscar1.papa) OR (romeo_three1kilo_oscar1.papa five NULL)) AND (((romeo_three1kilo_oscar1.lima_romeo)::text = 'quebec_quebec'::text) OR ((romeo_three1kilo_oscar1.lima_romeo)::text = 'two_tango'::text) OR ((romeo_three1kilo_oscar1.lima_romeo)::text = 'golf_juliet'::text) OR ((romeo_three1kilo_oscar1.lima_romeo)::text = 'kilo_five'::text)))
  • Rows Removed by Filter: 1,673
  • Heap Blocks: exact=1,679
  • Buffers: shared hit=1,732
4. 0.072 0.706 ↓ 0.0 0 1

BitmapAnd (cost=66.71..66.71 rows=1 width=0) (actual time=0.705..0.706 rows=0 loops=1)

  • Buffers: shared hit=53
5. 0.278 0.278 ↓ 1.2 1,742 1

Bitmap Index Scan on three_india (cost=0.00..26.07 rows=1,511 width=0) (actual time=0.278..0.278 rows=1,742 loops=1)

  • Index Cond: (romeo_three1kilo_oscar1.lima_echo = 657)
  • Buffers: shared hit=12
6. 0.356 0.356 ↓ 1.2 1,742 1

Bitmap Index Scan on uniform_charlie (cost=0.00..40.39 rows=1,498 width=0) (actual time=0.356..0.356 rows=1,742 loops=1)

  • Index Cond: ((romeo_three1kilo_oscar1.golf_echo)::text = 'uniform_delta'::text)
  • Buffers: shared hit=41
7. 0.020 4.807 ↓ 3.0 3 1

Sort (cost=5.19..5.20 rows=1 width=2,188) (actual time=4.805..4.807 rows=3 loops=1)

  • Output: romeo_three1.juliet_delta, romeo_three1.oscar, romeo_three1.november_seven, romeo_three1.three_five, romeo_three1.foxtrot_bravo, romeo_three1.lima_romeo, romeo_three1.seven_seven, romeo_three2.juliet_delta, romeo_three2.three_zulu, romeo_three1.mike, romeo_three2.quebec_bravo, romeo_three3.charlie
  • Sort Key: romeo_three1.lima_romeo, romeo_three1.foxtrot_bravo DESC, romeo_three1.mike DESC
  • Sort Method: quicksort Memory: 26kB
  • Buffers: shared hit=1,750
8. 0.004 4.787 ↓ 3.0 3 1

Nested Loop Left Join (cost=0.70..5.18 rows=1 width=2,188) (actual time=4.721..4.787 rows=3 loops=1)

  • Output: romeo_three1.juliet_delta, romeo_three1.oscar, romeo_three1.november_seven, romeo_three1.three_five, romeo_three1.foxtrot_bravo, romeo_three1.lima_romeo, romeo_three1.seven_seven, romeo_three2.juliet_delta, romeo_three2.three_zulu, romeo_three1.mike, romeo_three2.quebec_bravo, romeo_three3.charlie
  • Buffers: shared hit=1,750
9. 0.009 4.771 ↓ 3.0 3 1

Nested Loop (cost=0.28..2.53 rows=1 width=2,159) (actual time=4.710..4.771 rows=3 loops=1)

  • Output: romeo_three1.juliet_delta, romeo_three1.oscar, romeo_three1.november_seven, romeo_three1.three_five, romeo_three1.foxtrot_bravo, romeo_three1.lima_romeo, romeo_three1.seven_seven, romeo_three1.mike, romeo_three1.quebec_seven, romeo_three2.juliet_delta, romeo_three2.three_zulu, romeo_three2.quebec_bravo
  • Inner Unique: true
  • Buffers: shared hit=1,741
10. 4.747 4.747 ↓ 3.0 3 1

CTE Scan on juliet_six four_uniform (cost=0.00..0.02 rows=1 width=2,098) (actual time=4.693..4.747 rows=3 loops=1)

  • Output: romeo_three1.quebec_seven, romeo_three1.delta_uniform_lima, romeo_three1.three_five, romeo_three1.seven_seven, romeo_three1.november_seven, romeo_three1.mike, romeo_three1.foxtrot_bravo, romeo_three1.golf_echo, romeo_three1.zulu_alpha, romeo_three1.oscar, romeo_three1.victor_tango, romeo_three1.lima_echo, romeo_three1.juliet_hotel, romeo_three1.lima_romeo, romeo_three1.november_romeo, romeo_three1.yankee_papa, romeo_three1.four_sierra, romeo_three1.juliet_delta, romeo_three1.papa, romeo_three1.two_romeo, romeo_three1.yankee_tango, romeo_three1.quebec_xray, romeo_three1.whiskey_five, romeo_three1.delta_uniform_two, romeo_three1.seven_bravo
  • Buffers: shared hit=1,732
11. 0.015 0.015 ↑ 1.0 1 3

Index Scan using sierra_delta on six foxtrot_juliet (cost=0.28..2.50 rows=1 width=85) (actual time=0.005..0.005 rows=1 loops=3)

  • Output: romeo_three2.quebec_seven, romeo_three2.delta_uniform_lima, romeo_three2.echo, romeo_three2.lima_seven, romeo_three2.romeo_kilo, romeo_three2.hotel, romeo_three2.lima_delta, romeo_three2.three_zulu, romeo_three2.juliet_delta, romeo_three2.quebec_bravo, romeo_three2.romeo_echo, romeo_three2.papa, romeo_three2.golf_romeo, romeo_three2.india_foxtrot, romeo_three2.uniform_five
  • Index Cond: (romeo_three2.quebec_seven = romeo_three1.lima_echo)
  • Filter: (romeo_three1.mike >= romeo_three2.echo)
  • Buffers: shared hit=9
12. 0.012 0.012 ↓ 0.0 0 3

Index Scan using whiskey_juliet on victor_uniform india_november (cost=0.42..2.64 rows=1 width=45) (actual time=0.004..0.004 rows=0 loops=3)

  • Output: romeo_three3.quebec_seven, romeo_three3.delta_uniform_lima, romeo_three3.sierra_foxtrot, romeo_three3.charlie
  • Index Cond: (romeo_three1.quebec_seven = romeo_three3.sierra_foxtrot)
  • Buffers: shared hit=9
Planning time : 0.467 ms
Execution time : 4.988 ms