explain.depesz.com

PostgreSQL's explain analyze made readable

Result: QoJy

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 1,237.955 ↑ 1.0 1 1

Aggregate (cost=391,537.41..391,537.42 rows=1 width=32) (actual time=1,237.955..1,237.955 rows=1 loops=1)

2. 3.666 1,239.179 ↓ 1.5 3 1

Gather (cost=391,537.19..391,537.4 rows=2 width=32) (actual time=1,237.856..1,239.179 rows=3 loops=1)

  • Workers Planned: 2
  • Workers Launched: 2
3. 0.200 1,235.513 ↑ 1.0 1 3 / 3

Aggregate (cost=390,537.19..390,537.2 rows=1 width=32) (actual time=1,235.513..1,235.513 rows=1 loops=3)

4. 15.861 1,235.313 ↑ 1.2 80 3 / 3

Hash Join (cost=15,281.32..390,536.48 rows=95 width=12) (actual time=50.353..1,235.313 rows=80 loops=3)

5. 1,177.273 1,177.273 ↑ 1.0 91,570 3 / 3

Seq Scan on lineitem lineitem (cost=0..374,894.95 rows=94,676 width=21) (actual time=0.037..1,177.273 rows=91,570 loops=3)

  • Filter: ((l_shipmode = ANY ('{AIR,"AIR REG"}'::bpchar[])) AND (l_shipinstruct = 'DELIVER IN PERSON'::bpchar) AND (((l_quantity >= '9'::numeric) AND (l_quantity <= '19'::numeric)) OR ((l_quantity >= '20'::numeric) AND (l_quantity <= '30'::numeric)) OR ((l_quantity >= '30'::numeric) AND (l_quantity <= '40'::numeric))))
6. 0.163 42.179 ↑ 1.2 330 3 / 3

Hash (cost=15,276.33..15,276.33 rows=399 width=30) (actual time=42.179..42.179 rows=330 loops=3)

7. 42.016 42.016 ↑ 1.2 330 3 / 3

Seq Scan on part part (cost=0..15,276.33 rows=399 width=30) (actual time=0.159..42.016 rows=330 loops=3)

  • Filter: ((p_size >= 1) AND (((p_brand = 'Brand#33'::bpchar) AND (p_container = ANY ('{"SM CASE","SM BOX","SM PACK","SM PKG"}'::bpchar[])) AND (p_size <= 5)) OR ((p_brand = 'Brand#52'::bpchar) AND (p_container = ANY ('{"MED BAG","MED BOX","MED PKG","MED PACK"}'::bpchar[])) AND (p_size <= 10)) OR ((p_brand = 'Brand#15'::bpchar) AND (p_container = ANY ('{"LG CASE","LG BOX","LG PACK","LG PKG"}'::bpchar[])) AND (p_size <= 15))))
Planning time : 0.305 ms
Execution time : 1,239.241 ms