explain.depesz.com

PostgreSQL's explain analyze made readable

Result: NkzU

Settings

Optimization(s) for this plan:

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

Subquery Scan on six_mike (cost=451,131.940..452,337.350 rows=96,433 width=1,330) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Sort (cost=451,131.940..451,373.020 rows=96,433 width=1,362) (actual rows= loops=)

  • Sort Key: november_alpha.victor_alpha, november_alpha.three_romeo
3. 0.000 0.000 ↓ 0.0

Subquery Scan on november_alpha (cost=219,519.860..328,439.620 rows=96,433 width=1,362) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

Unique (cost=219,519.860..318,796.320 rows=96,433 width=1,169) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Merge Left Join (cost=219,519.860..318,555.240 rows=96,433 width=1,169) (actual rows= loops=)

  • Merge Cond: (india_tango.echo = foxtrot_delta.echo)
6. 0.000 0.000 ↓ 0.0

Merge Left Join (cost=195,934.520..287,397.010 rows=96,433 width=1,039) (actual rows= loops=)

  • Merge Cond: (india_tango.echo = xray_mike.echo)
7. 0.000 0.000 ↓ 0.0

Merge Left Join (cost=182,758.220..273,422.200 rows=96,433 width=1,031) (actual rows= loops=)

  • Merge Cond: (india_tango.echo = romeo_three1kilo_oscar1.echo)
8. 0.000 0.000 ↓ 0.0

Merge Left Join (cost=91,385.000..180,402.420 rows=96,433 width=976) (actual rows= loops=)

  • Merge Cond: (india_tango.echo = romeo_three1.echo)
9. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=11.780..87,382.650 rows=96,433 width=921) (actual rows= loops=)

10. 0.000 0.000 ↓ 0.0

Merge Left Join (cost=11.640..72,468.070 rows=96,433 width=889) (actual rows= loops=)

  • Merge Cond: (india_tango.echo = quebec_six.five_charlie)
11. 0.000 0.000 ↓ 0.0

Merge Left Join (cost=2.570..72,217.690 rows=96,433 width=833) (actual rows= loops=)

  • Merge Cond: (india_tango.echo = two_juliet.echo)
12. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.840..71,974.780 rows=96,433 width=801) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.700..56,879.170 rows=96,433 width=793) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

Index Scan using quebec_juliet on india_tango (cost=0.420..27,709.450 rows=96,433 width=776) (actual rows= loops=)

  • Filter: (juliet = ANY ('two_zulu'::integer[]))
15. 0.000 0.000 ↓ 0.0

Index Scan using foxtrot_victor on delta_oscar (cost=0.280..0.300 rows=1 width=21) (actual rows= loops=)

  • Index Cond: (india_tango.kilo_victor = kilo_victor)
16. 0.000 0.000 ↓ 0.0

Index Scan using alpha_foxtrot on victor_lima (cost=0.140..0.160 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (delta_oscar.bravo_hotel_xray = bravo_hotel_xray)
17. 0.000 0.000 ↓ 0.0

GroupAggregate (cost=1.730..1.790 rows=3 width=36) (actual rows= loops=)

  • Group Key: two_juliet.echo
18. 0.000 0.000 ↓ 0.0

Sort (cost=1.730..1.730 rows=3 width=20) (actual rows= loops=)

  • Sort Key: two_juliet.echo
19. 0.000 0.000 ↓ 0.0

Seq Scan on two_juliet (cost=0.000..1.700 rows=3 width=20) (actual rows= loops=)

  • Filter: (juliet = ANY ('two_zulu'::integer[]))
20. 0.000 0.000 ↓ 0.0

Sort (cost=8.890..9.000 rows=44 width=60) (actual rows= loops=)

  • Sort Key: quebec_six.five_charlie
21. 0.000 0.000 ↓ 0.0

Seq Scan on quebec_six (cost=0.000..7.690 rows=44 width=60) (actual rows= loops=)

  • Filter: ((delta_charlie)::text = 'whiskey_lima'::text)
22. 0.000 0.000 ↓ 0.0

Index Scan using alpha_sierra on bravo_hotel_tango (cost=0.140..0.160 rows=1 width=36) (actual rows= loops=)

  • Index Cond: (india_tango.bravo_oscar_five = bravo_oscar_five)
23. 0.000 0.000 ↓ 0.0

Materialize (cost=91,373.220..91,973.320 rows=120,020 width=59) (actual rows= loops=)

24. 0.000 0.000 ↓ 0.0

Sort (cost=91,373.220..91,673.270 rows=120,020 width=59) (actual rows= loops=)

  • Sort Key: romeo_three1.echo
25. 0.000 0.000 ↓ 0.0

Hash Join (cost=46,692.990..76,732.790 rows=120,020 width=59) (actual rows= loops=)

  • Hash Cond: (romeo_three6.zulu_juliet = romeo_three7.zulu_juliet)
26. 0.000 0.000 ↓ 0.0

Hash Join (cost=46,565.370..76,289.640 rows=120,020 width=45) (actual rows= loops=)

  • Hash Cond: (romeo_three5.romeo_hotel = romeo_three6.romeo_hotel)
27. 0.000 0.000 ↓ 0.0

Hash Join (cost=45,034.610..74,443.790 rows=120,020 width=45) (actual rows= loops=)

  • Hash Cond: (romeo_three1.oscar = romeo_three3.oscar)
28. 0.000 0.000 ↓ 0.0

Hash Join (cost=44,933.360..74,026.740 rows=120,020 width=16) (actual rows= loops=)

  • Hash Cond: (romeo_three5.november_zulu = romeo_three8.november_zulu)
29. 0.000 0.000 ↓ 0.0

Seq Scan on foxtrot_delta xray_five (cost=0.000..18,870.910 rows=731,091 width=8) (actual rows= loops=)

30. 0.000 0.000 ↓ 0.0

Hash (cost=42,846.110..42,846.110 rows=120,020 width=16) (actual rows= loops=)

31. 0.000 0.000 ↓ 0.0

Hash Join (cost=28,025.080..42,846.110 rows=120,020 width=16) (actual rows= loops=)

  • Hash Cond: (romeo_three8.three_tango = romeo_three4.three_tango)
32. 0.000 0.000 ↓ 0.0

Seq Scan on bravo_juliet three_quebec (cost=0.000..11,671.970 rows=519,697 width=8) (actual rows= loops=)

33. 0.000 0.000 ↓ 0.0

Hash (cost=27,268.540..27,268.540 rows=60,523 width=20) (actual rows= loops=)

34. 0.000 0.000 ↓ 0.0

Hash Join (cost=20,268.860..27,268.540 rows=60,523 width=20) (actual rows= loops=)

  • Hash Cond: (romeo_three4.three_tango = romeo_three1.three_tango)
35. 0.000 0.000 ↓ 0.0

Seq Scan on bravo_xray victor_hotel (cost=0.000..5,411.690 rows=262,069 width=4) (actual rows= loops=)

36. 0.000 0.000 ↓ 0.0

Hash (cost=19,512.320..19,512.320 rows=60,523 width=16) (actual rows= loops=)

37. 0.000 0.000 ↓ 0.0

Hash Join (cost=16,509.990..19,512.320 rows=60,523 width=16) (actual rows= loops=)

  • Hash Cond: (romeo_three2.three_two = romeo_three1.romeo_oscar)
38. 0.000 0.000 ↓ 0.0

Subquery Scan on foxtrot_juliet (cost=7,158.740..8,369.200 rows=60,523 width=4) (actual rows= loops=)

39. 0.000 0.000 ↓ 0.0

HashAggregate (cost=7,158.740..7,763.970 rows=60,523 width=8) (actual rows= loops=)

  • Group Key: yankee.echo
40. 0.000 0.000 ↓ 0.0

Seq Scan on yankee (cost=0.000..6,462.380 rows=139,273 width=8) (actual rows= loops=)

  • Filter: (juliet = ANY ('two_zulu'::integer[]))
41. 0.000 0.000 ↓ 0.0

Hash (cost=5,721.000..5,721.000 rows=197,700 width=20) (actual rows= loops=)

42. 0.000 0.000 ↓ 0.0

Seq Scan on yankee four_uniform_two (cost=0.000..5,721.000 rows=197,700 width=20) (actual rows= loops=)

43. 0.000 0.000 ↓ 0.0

Hash (cost=78.890..78.890 rows=1,789 width=37) (actual rows= loops=)

44. 0.000 0.000 ↓ 0.0

Seq Scan on bravo_oscar_xray india_november (cost=0.000..78.890 rows=1,789 width=37) (actual rows= loops=)

45. 0.000 0.000 ↓ 0.0

Hash (cost=1,077.560..1,077.560 rows=36,256 width=8) (actual rows= loops=)

46. 0.000 0.000 ↓ 0.0

Seq Scan on victor_victor five_echo (cost=0.000..1,077.560 rows=36,256 width=8) (actual rows= loops=)

47. 0.000 0.000 ↓ 0.0

Hash (cost=92.830..92.830 rows=2,783 width=22) (actual rows= loops=)

48. 0.000 0.000 ↓ 0.0

Seq Scan on tango_mike papa (cost=0.000..92.830 rows=2,783 width=22) (actual rows= loops=)

49. 0.000 0.000 ↓ 0.0

Materialize (cost=91,373.220..91,973.320 rows=120,020 width=59) (actual rows= loops=)

50. 0.000 0.000 ↓ 0.0

Sort (cost=91,373.220..91,673.270 rows=120,020 width=59) (actual rows= loops=)

  • Sort Key: romeo_three1kilo_oscar1.echo
51. 0.000 0.000 ↓ 0.0

Hash Join (cost=46,692.990..76,732.790 rows=120,020 width=59) (actual rows= loops=)

  • Hash Cond: (romeo_three6kilo_oscar1.zulu_juliet = romeo_three7kilo_oscar1.zulu_juliet)
52. 0.000 0.000 ↓ 0.0

Hash Join (cost=46,565.370..76,289.640 rows=120,020 width=45) (actual rows= loops=)

  • Hash Cond: (romeo_three5kilo_oscar1.romeo_hotel = romeo_three6kilo_oscar1.romeo_hotel)
53. 0.000 0.000 ↓ 0.0

Hash Join (cost=45,034.610..74,443.790 rows=120,020 width=45) (actual rows= loops=)

  • Hash Cond: (romeo_three1kilo_oscar1.oscar = romeo_three3kilo_oscar1.oscar)
54. 0.000 0.000 ↓ 0.0

Hash Join (cost=44,933.360..74,026.740 rows=120,020 width=16) (actual rows= loops=)

  • Hash Cond: (romeo_three5kilo_oscar1.november_zulu = romeo_three8kilo_oscar1.november_zulu)
55. 0.000 0.000 ↓ 0.0

Seq Scan on foxtrot_delta tango_oscar (cost=0.000..18,870.910 rows=731,091 width=8) (actual rows= loops=)

56. 0.000 0.000 ↓ 0.0

Hash (cost=42,846.110..42,846.110 rows=120,020 width=16) (actual rows= loops=)

57. 0.000 0.000 ↓ 0.0

Hash Join (cost=28,025.080..42,846.110 rows=120,020 width=16) (actual rows= loops=)

  • Hash Cond: (romeo_three8kilo_oscar1.three_tango = romeo_three4kilo_oscar1.three_tango)
58. 0.000 0.000 ↓ 0.0

Seq Scan on bravo_juliet tango_bravo (cost=0.000..11,671.970 rows=519,697 width=8) (actual rows= loops=)

59. 0.000 0.000 ↓ 0.0

Hash (cost=27,268.540..27,268.540 rows=60,523 width=20) (actual rows= loops=)

60. 0.000 0.000 ↓ 0.0

Hash Join (cost=20,268.860..27,268.540 rows=60,523 width=20) (actual rows= loops=)

  • Hash Cond: (romeo_three4kilo_oscar1.three_tango = romeo_three1kilo_oscar1.three_tango)
61. 0.000 0.000 ↓ 0.0

Seq Scan on bravo_xray whiskey_november (cost=0.000..5,411.690 rows=262,069 width=4) (actual rows= loops=)

62. 0.000 0.000 ↓ 0.0

Hash (cost=19,512.320..19,512.320 rows=60,523 width=16) (actual rows= loops=)

63. 0.000 0.000 ↓ 0.0

Hash Join (cost=16,509.990..19,512.320 rows=60,523 width=16) (actual rows= loops=)

  • Hash Cond: (romeo_three2kilo_oscar1.three_two = romeo_three1kilo_oscar1.romeo_oscar)
64. 0.000 0.000 ↓ 0.0

Subquery Scan on uniform (cost=7,158.740..8,369.200 rows=60,523 width=4) (actual rows= loops=)

65. 0.000 0.000 ↓ 0.0

HashAggregate (cost=7,158.740..7,763.970 rows=60,523 width=8) (actual rows= loops=)

  • Group Key: sierra1.echo
66. 0.000 0.000 ↓ 0.0

Seq Scan on yankee tango_papa (cost=0.000..6,462.380 rows=139,273 width=8) (actual rows= loops=)

  • Filter: (juliet = ANY ('two_zulu'::integer[]))
67. 0.000 0.000 ↓ 0.0

Hash (cost=5,721.000..5,721.000 rows=197,700 width=20) (actual rows= loops=)

68. 0.000 0.000 ↓ 0.0

Seq Scan on yankee zulu_xray (cost=0.000..5,721.000 rows=197,700 width=20) (actual rows= loops=)

69. 0.000 0.000 ↓ 0.0

Hash (cost=78.890..78.890 rows=1,789 width=37) (actual rows= loops=)

70. 0.000 0.000 ↓ 0.0

Seq Scan on bravo_oscar_xray alpha_charlie (cost=0.000..78.890 rows=1,789 width=37) (actual rows= loops=)

71. 0.000 0.000 ↓ 0.0

Hash (cost=1,077.560..1,077.560 rows=36,256 width=8) (actual rows= loops=)

72. 0.000 0.000 ↓ 0.0

Seq Scan on victor_victor four_foxtrot (cost=0.000..1,077.560 rows=36,256 width=8) (actual rows= loops=)

73. 0.000 0.000 ↓ 0.0

Hash (cost=92.830..92.830 rows=2,783 width=22) (actual rows= loops=)

74. 0.000 0.000 ↓ 0.0

Seq Scan on tango_mike november_yankee (cost=0.000..92.830 rows=2,783 width=22) (actual rows= loops=)

75. 0.000 0.000 ↓ 0.0

Sort (cost=13,176.300..13,327.610 rows=60,523 width=12) (actual rows= loops=)

  • Sort Key: xray_mike.echo
76. 0.000 0.000 ↓ 0.0

Subquery Scan on xray_mike (cost=7,158.740..8,369.200 rows=60,523 width=12) (actual rows= loops=)

77. 0.000 0.000 ↓ 0.0

HashAggregate (cost=7,158.740..7,763.970 rows=60,523 width=12) (actual rows= loops=)

  • Group Key: sierra2.echo
78. 0.000 0.000 ↓ 0.0

Seq Scan on yankee three_kilo (cost=0.000..6,462.380 rows=139,273 width=8) (actual rows= loops=)

  • Filter: (juliet = ANY ('two_zulu'::integer[]))
79. 0.000 0.000 ↓ 0.0

Materialize (cost=23,585.340..23,667.740 rows=2,523 width=12) (actual rows= loops=)

80. 0.000 0.000 ↓ 0.0

GroupAggregate (cost=23,585.340..23,636.200 rows=2,523 width=16) (actual rows= loops=)

  • Group Key: foxtrot_delta.echo, foxtrot_delta.lima_november
81. 0.000 0.000 ↓ 0.0

Sort (cost=23,585.340..23,591.750 rows=2,563 width=12) (actual rows= loops=)

  • Sort Key: foxtrot_delta.echo, foxtrot_delta.lima_november
82. 0.000 0.000 ↓ 0.0

Seq Scan on foxtrot_delta (cost=0.000..23,440.230 rows=2,563 width=12) (actual rows= loops=)

  • Filter: ((lima_sierra(six_xray, 'november_golf'::bit(1)) = 'four_uniform_quebec'::bit(1)) AND (juliet = ANY ('two_zulu'::integer[])))