explain.depesz.com

PostgreSQL's explain analyze made readable

Result: p1kD

Settings
# exclusive inclusive rows x rows loops node
1. 0.035 10,301.402 ↑ 9.0 176 1

Append (cost=3,341,518.14..6,578,294.66 rows=1,579 width=30) (actual time=1,272.161..10,301.402 rows=176 loops=1)

  • Buffers: shared hit=4210 read=17648, temp read=39820 written=35234
2.          

CTE _discounts

3. 0.000 0.004 ↓ 0.0 0 1

GroupAggregate (cost=1.25..412.39 rows=7 width=572) (actual time=0.004..0.004 rows=0 loops=1)

  • Output: d.id, d.name, d.amount, d.percentage, d.minimum_order_price, array_agg(DISTINCT tag.producttag_id), array_agg(DISTINCT cat.category_id), array_agg(DISTINCT customer.customergroup_id)
  • Buffers: shared hit=1
4. 0.000 0.004 ↓ 0.0 0 1

Merge Left Join (cost=1.25..348.25 rows=6,402 width=572) (actual time=0.004..0.004 rows=0 loops=1)

  • Output: d.id, d.name, d.amount, d.percentage, d.minimum_order_price, cat.category_id, tag.producttag_id, customer.customergroup_id
  • Merge Cond: (d.id = customer.discount_id)
  • Buffers: shared hit=1
5. 0.001 0.004 ↓ 0.0 0 1

Merge Left Join (cost=1.10..177.32 rows=660 width=568) (actual time=0.004..0.004 rows=0 loops=1)

  • Output: d.id, d.name, d.amount, d.percentage, d.minimum_order_price, cat.category_id, tag.producttag_id
  • Merge Cond: (d.id = tag.discount_id)
  • Buffers: shared hit=1
6. 0.001 0.003 ↓ 0.0 0 1

Nested Loop Left Join (cost=0.95..92.45 rows=68 width=564) (actual time=0.003..0.003 rows=0 loops=1)

  • Output: d.id, d.name, d.amount, d.percentage, d.minimum_order_price, cat.category_id
  • Buffers: shared hit=1
7. 0.002 0.002 ↓ 0.0 0 1

Index Scan using discount_pkey on public.discount d (cost=0.14..48.05 rows=7 width=560) (actual time=0.002..0.002 rows=0 loops=1)

  • Output: d.id, d.name, d.percentage, d.amount, d.date_added, d.start_date, d.end_date, d.is_active, d.minimum_order_price
  • Filter: (d.is_active AND (('now'::cstring)::date >= d.start_date) AND (('now'::cstring)::date <= d.end_date))
  • Buffers: shared hit=1
8. 0.000 0.000 ↓ 0.0 0

Bitmap Heap Scan on public.discount_category cat (cost=0.80..6.24 rows=10 width=4) (never executed)

  • Output: cat.id, cat.discount_id, cat.category_id
  • Recheck Cond: (d.id = cat.category_id)
9. 0.000 0.000 ↓ 0.0 0

Bitmap Index Scan on discount_category_category_id (cost=0.00..0.80 rows=10 width=0) (never executed)

  • Index Cond: (d.id = cat.category_id)
10. 0.000 0.000 ↓ 0.0 0

Index Scan using discount_product_tag_discount_id on public.discount_product_tag tag (cost=0.15..73.25 rows=1,940 width=8) (never executed)

  • Output: tag.id, tag.discount_id, tag.producttag_id
11. 0.000 0.000 ↓ 0.0 0

Materialize (cost=0.15..78.10 rows=1,940 width=8) (never executed)

  • Output: customer.id, customer.discount_id, customer.customergroup_id
12. 0.000 0.000 ↓ 0.0 0

Index Scan using discount_customer_group_discount_id on public.discount_customer_group customer (cost=0.15..73.25 rows=1,940 width=8) (never executed)

  • Output: customer.id, customer.discount_id, customer.customergroup_id
13.          

CTE dataset

14. 235.551 995.161 ↑ 1.0 379,805 1

Seq Scan on public.product product_1 (cost=0.00..3,332,560.14 rows=379,805 width=40) (actual time=0.020..995.161 rows=379,805 loops=1)

  • Output: product_1.id, product_1.manufacturer_id, product_1.category_id, product_1.grup_id, round(COALESCE((SubPlan 3), product_1.discount_price, product_1.price), 2)
  • Filter: product_1.active
  • Buffers: shared hit=165 read=17648
15.          

SubPlan (forSeq Scan)

16. 379.805 759.610 ↓ 0.0 0 379,805

Limit (cost=8.71..8.71 rows=1 width=22) (actual time=0.002..0.002 rows=0 loops=379,805)

  • Output: (CASE WHEN (d_1.percentage IS NOT NULL) THEN ((((100 - d_1.percentage))::numeric / 100.0) * COALESCE(product_1.discount_price, product_1.price)) ELSE (COALESCE(product_1.discount_price, product_1.price) - d_1.amount) END), (COALESCE(((d_1.percentage)::numeric * product_1.price), d_1.amount))
  • Buffers: shared hit=1
17.          

Initplan (forLimit)

18. 0.000 0.000 ↓ 0.0 0

Index Scan using product_tags_product_id on public.product_tags (cost=0.28..8.30 rows=1 width=4) (never executed)

  • Output: product_tags.producttag_id
  • Index Cond: (product_tags.product_id = product_1.id)
19. 379.805 379.805 ↓ 0.0 0 379,805

Sort (cost=0.41..0.42 rows=1 width=22) (actual time=0.001..0.001 rows=0 loops=379,805)

  • Output: (CASE WHEN (d_1.percentage IS NOT NULL) THEN ((((100 - d_1.percentage))::numeric / 100.0) * COALESCE(product_1.discount_price, product_1.price)) ELSE (COALESCE(product_1.discount_price, product_1.price) - d_1.amount) END), (COALESCE(((d_1.percentage)::numeric * product_1.price), d_1.amount))
  • Sort Key: (COALESCE(((d_1.percentage)::numeric * product_1.price), d_1.amount))
  • Sort Method: quicksort Memory: 25kB
  • Buffers: shared hit=1
20. 0.000 0.000 ↓ 0.0 0 379,805

CTE Scan on _discounts d_1 (cost=0.00..0.40 rows=1 width=22) (actual time=0.000..0.000 rows=0 loops=379,805)

  • Output: CASE WHEN (d_1.percentage IS NOT NULL) THEN ((((100 - d_1.percentage))::numeric / 100.0) * COALESCE(product_1.discount_price, product_1.price)) ELSE (COALESCE(product_1.discount_price, product_1.price) - d_1.amount) END, COALESCE(((d_1.percentage)::numeric * product_1.price), d_1.amount)
  • Filter: (((d_1.tags = '{NULL}'::integer[]) OR (d_1.tags && $5)) AND ((d_1.cats = '{NULL}'::integer[]) OR (product_1.category_id = ANY (d_1.cats))) AND ((d_1.customers = '{NULL}'::integer[]) OR (1 = ANY (d_1.customers))))
  • Buffers: shared hit=1
21. 61.213 1,272.161 ↑ 1.0 1 1

Aggregate (cost=8,545.61..8,545.62 rows=1 width=4) (actual time=1,272.161..1,272.161 rows=1 loops=1)

  • Output: count(product.id), NULL::integer, NULL::character varying, NULL::text, 0
  • Buffers: shared hit=165 read=17648, temp written=1526
22. 1,210.948 1,210.948 ↑ 1.0 379,805 1

CTE Scan on dataset product (cost=0.00..7,596.10 rows=379,805 width=4) (actual time=0.023..1,210.948 rows=379,805 loops=1)

  • Output: product.id, product.manufacturer_id, product.category_id, product.grup_id, product.price
  • Buffers: shared hit=165 read=17648, temp written=1526
23. 0.020 244.468 ↑ 1.0 120 1

Subquery Scan on *SELECT* 2 (cost=12,447.66..12,449.16 rows=120 width=14) (actual time=244.442..244.468 rows=120 loops=1)

  • Output: "*SELECT* 2".count, "*SELECT* 2".id, "*SELECT* 2".name, NULL::text, 1
  • Buffers: shared hit=1, temp read=1528 written=1
24. 0.072 244.448 ↑ 1.0 120 1

Sort (cost=12,447.66..12,447.96 rows=120 width=14) (actual time=244.441..244.448 rows=120 loops=1)

  • Output: (count(dataset.id)), m.id, m.name, (NULL::text), (1)
  • Sort Key: m.name
  • Sort Method: quicksort Memory: 34kB
  • Buffers: shared hit=1, temp read=1528 written=1
25. 74.810 244.376 ↑ 1.0 120 1

HashAggregate (cost=12,442.31..12,443.51 rows=120 width=14) (actual time=244.362..244.376 rows=120 loops=1)

  • Output: count(dataset.id), m.id, m.name, NULL::text, 1
  • Buffers: shared hit=1, temp read=1528 written=1
26. 110.856 169.566 ↓ 1.7 379,805 1

Hash Join (cost=3.70..11,302.90 rows=227,883 width=14) (actual time=0.067..169.566 rows=379,805 loops=1)

  • Output: dataset.id, m.id, m.name
  • Hash Cond: (dataset.manufacturer_id = m.id)
  • Buffers: shared hit=1, temp read=1528 written=1
27. 58.670 58.670 ↑ 1.0 379,805 1

CTE Scan on dataset (cost=0.00..7,596.10 rows=379,805 width=8) (actual time=0.017..58.670 rows=379,805 loops=1)

  • Output: dataset.id, dataset.manufacturer_id, dataset.category_id, dataset.grup_id, dataset.price
  • Buffers: temp read=1528 written=1
28. 0.022 0.040 ↑ 1.0 120 1

Hash (cost=2.20..2.20 rows=120 width=10) (actual time=0.040..0.040 rows=120 loops=1)

  • Output: m.id, m.name
  • Buckets: 1024 Batches: 1 Memory Usage: 6kB
  • Buffers: shared hit=1
29. 0.018 0.018 ↑ 1.0 120 1

Seq Scan on public.manufacturer m (cost=0.00..2.20 rows=120 width=10) (actual time=0.004..0.018 rows=120 loops=1)

  • Output: m.id, m.name
  • Buffers: shared hit=1
30. 0.003 160.471 ↑ 3.0 1 1

Subquery Scan on *SELECT* 3 (cost=18,110.60..18,110.64 rows=3 width=408) (actual time=160.470..160.471 rows=1 loops=1)

  • Output: "*SELECT* 3".count, "*SELECT* 3".id, "*SELECT* 3".name, "*SELECT* 3".slug, 4
  • Buffers: shared hit=17, temp read=2098 written=568
31. 0.011 160.468 ↑ 3.0 1 1

Sort (cost=18,110.60..18,110.61 rows=3 width=408) (actual time=160.468..160.468 rows=1 loops=1)

  • Output: (count(dataset_1.id)), t.id, t.name, t.slug, (4)
  • Sort Key: t.name
  • Sort Method: quicksort Memory: 25kB
  • Buffers: shared hit=17, temp read=2098 written=568
32. 0.771 160.457 ↑ 3.0 1 1

HashAggregate (cost=18,110.55..18,110.58 rows=3 width=408) (actual time=160.456..160.457 rows=1 loops=1)

  • Output: count(dataset_1.id), t.id, t.name, t.slug, 4
  • Buffers: shared hit=17, temp read=2098 written=568
33. 92.606 159.686 ↑ 132.3 2,870 1

Hash Join (cost=273.11..16,211.52 rows=379,805 width=408) (actual time=8.023..159.686 rows=2,870 loops=1)

  • Output: dataset_1.id, t.id, t.name, t.slug
  • Hash Cond: (dataset_1.id = rel.product_id)
  • Buffers: shared hit=17, temp read=2098 written=568
34. 65.111 65.111 ↑ 1.0 379,805 1

CTE Scan on dataset dataset_1 (cost=0.00..7,596.10 rows=379,805 width=4) (actual time=0.006..65.111 rows=379,805 loops=1)

  • Output: dataset_1.id
  • Buffers: temp read=1528
35. 0.802 1.969 ↑ 1.0 2,870 1

Hash (cost=85.23..85.23 rows=2,870 width=408) (actual time=1.969..1.969 rows=2,870 loops=1)

  • Output: rel.product_id, t.id, t.name, t.slug
  • Buckets: 1024 Batches: 2 Memory Usage: 107kB
  • Buffers: shared hit=17, temp written=11
36. 0.827 1.167 ↑ 1.0 2,870 1

Hash Join (cost=1.07..85.23 rows=2,870 width=408) (actual time=0.018..1.167 rows=2,870 loops=1)

  • Output: rel.product_id, t.id, t.name, t.slug
  • Hash Cond: (rel.producttag_id = t.id)
  • Buffers: shared hit=17
37. 0.336 0.336 ↑ 1.0 2,870 1

Seq Scan on public.product_tags rel (cost=0.00..44.70 rows=2,870 width=8) (actual time=0.009..0.336 rows=2,870 loops=1)

  • Output: rel.id, rel.product_id, rel.producttag_id
  • Buffers: shared hit=16
38. 0.002 0.004 ↑ 1.0 3 1

Hash (cost=1.03..1.03 rows=3 width=404) (actual time=0.004..0.004 rows=3 loops=1)

  • Output: t.id, t.name, t.slug
  • Buckets: 1024 Batches: 1 Memory Usage: 1kB
  • Buffers: shared hit=1
39. 0.002 0.002 ↑ 1.0 3 1

Seq Scan on public.product_tag t (cost=0.00..1.03 rows=3 width=404) (actual time=0.001..0.002 rows=3 loops=1)

  • Output: t.id, t.name, t.slug
  • Buffers: shared hit=1
40. 0.006 247.015 ↑ 1.0 18 1

Subquery Scan on *SELECT* 4 (cost=9,983.71..9,984.07 rows=18 width=32) (actual time=247.011..247.015 rows=18 loops=1)

  • Output: "*SELECT* 4".count, "*SELECT* 4".id, "*SELECT* 4".name, "*SELECT* 4".slug, 2
  • Buffers: shared hit=10, temp read=1528
41. 72.049 247.009 ↑ 1.0 18 1

HashAggregate (cost=9,983.71..9,983.89 rows=18 width=32) (actual time=247.008..247.009 rows=18 loops=1)

  • Output: count(dataset_2.id), c.id, c.name, c.slug, 2
  • Buffers: shared hit=10, temp read=1528
42. 116.391 174.960 ↓ 6.2 379,805 1

Hash Join (cost=37.21..9,675.00 rows=61,742 width=32) (actual time=0.456..174.960 rows=379,805 loops=1)

  • Output: c.id, c.name, c.slug, dataset_2.id
  • Hash Cond: (dataset_2.category_id = node.id)
  • Buffers: shared hit=10, temp read=1528
43. 58.135 58.135 ↑ 1.0 379,805 1

CTE Scan on dataset dataset_2 (cost=0.00..7,596.10 rows=379,805 width=8) (actual time=0.010..58.135 rows=379,805 loops=1)

  • Output: dataset_2.id, dataset_2.manufacturer_id, dataset_2.category_id, dataset_2.grup_id, dataset_2.price
  • Buffers: temp read=1528
44. 0.076 0.434 ↓ 6.2 406 1

Hash (cost=36.39..36.39 rows=66 width=32) (actual time=0.434..0.434 rows=406 loops=1)

  • Output: c.id, c.name, c.slug, node.id
  • Buckets: 1024 Batches: 1 Memory Usage: 25kB
  • Buffers: shared hit=10
45. 0.162 0.358 ↓ 6.2 406 1

Hash Join (cost=14.14..36.39 rows=66 width=32) (actual time=0.170..0.358 rows=406 loops=1)

  • Output: c.id, c.name, c.slug, node.id
  • Hash Cond: (c.tree_id = node.tree_id)
  • Join Filter: ((node.lft > (c.lft - 1)) AND (node.rght < (c.rght + 1)))
  • Buffers: shared hit=10
46. 0.043 0.043 ↑ 1.0 18 1

Seq Scan on public.category c (cost=0.00..9.06 rows=18 width=40) (actual time=0.009..0.043 rows=18 loops=1)

  • Output: c.id, c.name, c.image, c.parent_id, c.attr, c.description, c.slug, c.lft, c.rght, c.tree_id, c.level, c.vehicle_category
  • Filter: (c.parent_id IS NULL)
  • Rows Removed by Filter: 388
  • Buffers: shared hit=5
47. 0.068 0.153 ↑ 1.0 406 1

Hash (cost=9.06..9.06 rows=406 width=16) (actual time=0.153..0.153 rows=406 loops=1)

  • Output: node.tree_id, node.lft, node.rght, node.id
  • Buckets: 1024 Batches: 1 Memory Usage: 20kB
  • Buffers: shared hit=5
48. 0.085 0.085 ↑ 1.0 406 1

Seq Scan on public.category node (cost=0.00..9.06 rows=406 width=16) (actual time=0.002..0.085 rows=406 loops=1)

  • Output: node.tree_id, node.lft, node.rght, node.id
  • Buffers: shared hit=5
49. 0.007 8,377.252 ↑ 39.9 36 1

Subquery Scan on *SELECT* 5 (cost=3,196,214.66..3,196,232.63 rows=1,437 width=31) (actual time=8,377.242..8,377.252 rows=36 loops=1)

  • Output: "*SELECT* 5".count, "*SELECT* 5".id, "*SELECT* 5".name, "*SELECT* 5".slug, 3
  • Buffers: shared hit=4017, temp read=34666 written=33139
50. 0.094 8,377.245 ↑ 39.9 36 1

Sort (cost=3,196,214.66..3,196,218.26 rows=1,437 width=31) (actual time=8,377.240..8,377.245 rows=36 loops=1)

  • Output: (count(DISTINCT dataset_3.id)), brand.id, brand.name, brand.slug, (3)
  • Sort Key: brand.name
  • Sort Method: quicksort Memory: 27kB
  • Buffers: shared hit=4017, temp read=34666 written=33139
51. 1,696.795 8,377.151 ↑ 39.9 36 1

GroupAggregate (cost=2,890,967.19..3,196,139.30 rows=1,437 width=31) (actual time=4,902.421..8,377.151 rows=36 loops=1)

  • Output: count(DISTINCT dataset_3.id), brand.id, brand.name, brand.slug, 3
  • Buffers: shared hit=4017, temp read=34666 written=33139
52. 939.773 6,680.356 ↑ 4.6 3,054,784 1

Merge Join (cost=2,890,967.19..3,126,210.79 rows=13,982,829 width=31) (actual time=4,850.223..6,680.356 rows=3,054,784 loops=1)

  • Output: dataset_3.id, brand.id, brand.name, brand.slug
  • Merge Cond: (model.parent_id = brand.id)
  • Buffers: shared hit=4017, temp read=30054 written=28527
53. 3,005.482 5,492.017 ↑ 4.7 3,054,784 1

Sort (cost=2,890,865.46..2,926,823.45 rows=14,383,196 width=8) (actual time=4,849.649..5,492.017 rows=3,054,784 loops=1)

  • Output: dataset_3.id, model.parent_id
  • Sort Key: model.parent_id
  • Sort Method: external merge Disk: 53768kB
  • Buffers: shared hit=4005, temp read=30054 written=28527
54. 653.901 2,486.535 ↑ 4.7 3,054,784 1

Merge Join (cost=174,656.15..394,265.85 rows=14,383,196 width=8) (actual time=1,214.420..2,486.535 rows=3,054,784 loops=1)

  • Output: dataset_3.id, model.parent_id
  • Merge Cond: (dataset_3.grup_id = rel_1.grup_id)
  • Buffers: shared hit=4005, temp read=7439 written=5912
55. 305.242 373.729 ↑ 1.0 378,906 1

Sort (cost=47,988.34..48,937.85 rows=379,805 width=8) (actual time=266.325..373.729 rows=378,906 loops=1)

  • Output: dataset_3.id, dataset_3.grup_id
  • Sort Key: dataset_3.grup_id
  • Sort Method: external merge Disk: 6696kB
  • Buffers: temp read=2967 written=1440
56. 68.487 68.487 ↑ 1.0 379,805 1

CTE Scan on dataset dataset_3 (cost=0.00..7,596.10 rows=379,805 width=8) (actual time=0.006..68.487 rows=379,805 loops=1)

  • Output: dataset_3.id, dataset_3.grup_id
  • Buffers: temp read=1528
57. 317.995 1,458.905 ↓ 3.9 3,060,582 1

Materialize (cost=126,667.81..130,593.22 rows=785,082 width=8) (actual time=917.271..1,458.905 rows=3,060,582 loops=1)

  • Output: rel_1.grup_id, model.parent_id
  • Buffers: shared hit=4005, temp read=4472 written=4472
58. 804.067 1,140.910 ↓ 1.0 807,561 1

Sort (cost=126,667.81..128,630.52 rows=785,082 width=8) (actual time=917.267..1,140.910 rows=807,561 loops=1)

  • Output: rel_1.grup_id, model.parent_id
  • Sort Key: rel_1.grup_id
  • Sort Method: external merge Disk: 14200kB
  • Buffers: shared hit=4005, temp read=4472 written=4472
59. 242.980 336.843 ↓ 1.0 807,561 1

Hash Join (cost=753.66..28,329.53 rows=785,082 width=8) (actual time=5.266..336.843 rows=807,561 loops=1)

  • Output: rel_1.grup_id, model.parent_id
  • Hash Cond: (rel_1.vehicle_id = v.id)
  • Buffers: shared hit=4005
60. 88.616 88.616 ↑ 1.0 807,561 1

Seq Scan on public.vehicle_grup_id rel_1 (cost=0.00..11,649.61 rows=807,561 width=8) (actual time=0.011..88.616 rows=807,561 loops=1)

  • Output: rel_1.vehicle_id, rel_1.grup_id
  • Buffers: shared hit=3574
61. 1.021 5.247 ↓ 1.0 6,713 1

Hash (cost=672.09..672.09 rows=6,526 width=8) (actual time=5.247..5.247 rows=6,713 loops=1)

  • Output: v.id, model.parent_id
  • Buckets: 1024 Batches: 1 Memory Usage: 263kB
  • Buffers: shared hit=431
62. 1.968 4.226 ↓ 1.0 6,713 1

Hash Join (cost=107.52..672.09 rows=6,526 width=8) (actual time=1.233..4.226 rows=6,713 loops=1)

  • Output: v.id, model.parent_id
  • Hash Cond: (v.vehicle_model_type_id = model_type.id)
  • Buffers: shared hit=431
63. 1.032 1.032 ↑ 1.0 6,713 1

Seq Scan on public.vehicle v (cost=0.00..474.13 rows=6,713 width=8) (actual time=0.003..1.032 rows=6,713 loops=1)

  • Output: v.id, v.vehicle_model_type_id, v.motor_type_id, v.fuel_type_id, v.begin_year, v.end_year, v.fulltext, v.grup_ids
  • Buffers: shared hit=407
64. 0.210 1.226 ↑ 1.0 1,397 1

Hash (cost=90.06..90.06 rows=1,397 width=8) (actual time=1.226..1.226 rows=1,397 loops=1)

  • Output: model_type.id, model.parent_id
  • Buckets: 1024 Batches: 1 Memory Usage: 53kB
  • Buffers: shared hit=24
65. 0.442 1.016 ↑ 1.0 1,397 1

Hash Join (cost=44.33..90.06 rows=1,397 width=8) (actual time=0.434..1.016 rows=1,397 loops=1)

  • Output: model_type.id, model.parent_id
  • Hash Cond: (model_type.parent_id = model.id)
  • Buffers: shared hit=24
66. 0.149 0.149 ↑ 1.0 1,437 1

Seq Scan on public.vehicle_tree model_type (cost=0.00..26.37 rows=1,437 width=8) (actual time=0.004..0.149 rows=1,437 loops=1)

  • Output: model_type.id, model_type.name, model_type.image, model_type.slug, model_type.parent_id, model_type.description, model_type.level
  • Buffers: shared hit=12
67. 0.199 0.425 ↑ 1.0 1,437 1

Hash (cost=26.37..26.37 rows=1,437 width=8) (actual time=0.425..0.425 rows=1,437 loops=1)

  • Output: model.id, model.parent_id
  • Buckets: 1024 Batches: 1 Memory Usage: 56kB
  • Buffers: shared hit=12
68. 0.226 0.226 ↑ 1.0 1,437 1

Seq Scan on public.vehicle_tree model (cost=0.00..26.37 rows=1,437 width=8) (actual time=0.004..0.226 rows=1,437 loops=1)

  • Output: model.id, model.parent_id
  • Buffers: shared hit=12
69. 248.355 248.566 ↓ 2,125.8 3,054,789 1

Sort (cost=101.73..105.32 rows=1,437 width=27) (actual time=0.568..248.566 rows=3,054,789 loops=1)

  • Output: brand.id, brand.name, brand.slug
  • Sort Key: brand.id
  • Sort Method: quicksort Memory: 157kB
  • Buffers: shared hit=12
70. 0.211 0.211 ↑ 1.0 1,437 1

Seq Scan on public.vehicle_tree brand (cost=0.00..26.37 rows=1,437 width=27) (actual time=0.010..0.211 rows=1,437 loops=1)

  • Output: brand.id, brand.name, brand.slug
  • Buffers: shared hit=12