explain.depesz.com

PostgreSQL's explain analyze made readable

Result: nfM8

Settings
# exclusive inclusive rows x rows loops node
1. 5.579 374.316 ↓ 414.8 5,392 1

Unique (cost=14,107.68..14,108.43 rows=13 width=286) (actual time=367.865..374.316 rows=5,392 loops=1)

  • Buffers: shared hit=1 read=1425
  • I/O Timings: read=9.945
2. 46.900 368.737 ↓ 439.4 5,712 1

Sort (cost=14,107.68..14,107.72 rows=13 width=286) (actual time=367.863..368.737 rows=5,712 loops=1)

  • Sort Key: c.year, c.part_number, c.epc_part_number, c.substitute, c.qty, c.part_name, c.epc_part_name, c.feature, c.image, c.image_index, c.image_name, c.first_level_id, c.first_level_name, c.second_level_id, c.second_level_name, c.rank, c."position", c.sub_chain, c.part_cd, c.btzeilen_bedkez, c.dev_series, c.assembly_flag
  • Sort Method: quicksort Memory: 2296kB
  • Buffers: shared hit=1 read=1425
  • I/O Timings: read=9.945
3. 2.884 321.837 ↓ 439.4 5,712 1

Subquery Scan on c (cost=12,918.82..14,107.44 rows=13 width=286) (actual time=307.375..321.837 rows=5,712 loops=1)

  • Filter: ((c.rank = 1) OR ((c.btzeilen_bedkez = 'B'::text) AND ((c.dev_series)::text = ANY ('{"F35 (MUE)","F30 (MUE)"}'::text[]))))
  • Rows Removed by Filter: 285
  • Buffers: shared hit=1 read=1425
  • I/O Timings: read=9.945
4. 10.561 318.953 ↓ 2.8 5,997 1

WindowAgg (cost=12,918.82..14,069.45 rows=2,171 width=318) (actual time=307.372..318.953 rows=5,997 loops=1)

  • Buffers: shared hit=1 read=1425
  • I/O Timings: read=9.945
5. 31.381 308.392 ↓ 2.8 5,997 1

Sort (cost=12,918.82..12,924.25 rows=2,171 width=274) (actual time=307.357..308.392 rows=5,997 loops=1)

  • Sort Key: t2.image, t2.image_index, (CASE WHEN ((t2.data_source)::text = '1'::text) THEN bmw.offline_matched_fun(t1.new_pr_list, (t1.steering)::text, t2.group_pr, t2.section_pr, t2.part_pr, t2.drive_type) ELSE bmw.ol_matched_fun(t1.new_pr_list, (t1.steering)::text, t2.section_pr, t2.part_pr, t2.drive_type) END) DESC
  • Sort Method: quicksort Memory: 2156kB
  • Buffers: shared hit=1 read=1425
  • I/O Timings: read=9.945
6. 43.534 277.011 ↓ 2.8 5,997 1

Nested Loop (cost=1.13..12,798.50 rows=2,171 width=274) (actual time=0.310..277.011 rows=5,997 loops=1)

  • Buffers: shared hit=1 read=1425
  • I/O Timings: read=9.945
7. 0.094 0.094 ↑ 1.0 1 1

Index Scan using s_mj_pr_repository_2020331182732_idx_1 on mj_pr_repository t1 (cost=0.56..8.58 rows=1 width=276) (actual time=0.093..0.094 rows=1 loops=1)

  • Index Cond: ((vin)::text = 'WBA8F1C57JAE97249'::text)
  • Buffers: shared read=5
  • I/O Timings: read=0.039
8. 233.383 233.383 ↓ 2.8 5,997 1

Index Scan using s_part_matched_all_2020515102057_idx_1 on part_matched_all t2 (cost=0.57..11,677.32 rows=2,168 width=296) (actual time=0.205..233.383 rows=5,997 loops=1)

  • Index Cond: (new_vehicle = t1.new_vehicle)
  • Filter: (((start_date)::text <= t1.fgstnr_prod) AND ((end_date)::text > t1.fgstnr_prod) AND (CASE WHEN ((data_source)::text = '1'::text) THEN bmw.offline_matched_fun(t1.new_pr_list, (t1.steering)::text, group_pr, section_pr, part_pr, drive_type) ELSE bmw.ol_matched_fun(t1.new_pr_list, (t1.steering)::text, section_pr, part_pr, drive_type) END <> '-9999'::numeric))
  • Rows Removed by Filter: 21093
  • Buffers: shared hit=1 read=1420
  • I/O Timings: read=9.905
Planning time : 1.565 ms
Execution time : 375.151 ms