explain.depesz.com

A tool for finding a real cause for slow queries.

Result: AoC

options
Did it help? Consider supporting us - Bitcoin address: 12v2hUztAk2LgzQ9H9LMwuU32urHMjZQnq
# exclusive inclusive rows x rows loops node
1. 0.000 0.000 ↓ 0.0

Limit (cost=522.70..3,258.56 rows=1 width=99) (actual time=.. rows= loops=)

2. 0.000 0.000 ↓ 0.0

Nested Loop (cost=522.70..3,258.56 rows=1 width=99) (actual time=.. rows= loops=)

  • Join Filter: (dg4.iddesc = d4.iddesc)
3. 0.000 0.000 ↓ 0.0

Nested Loop (cost=522.70..3,249.94 rows=1 width=103) (actual time=.. rows= loops=)

4. 0.000 0.000 ↓ 0.0

Nested Loop (cost=522.70..3,236.35 rows=1 width=111) (actual time=.. rows= loops=)

5. 0.000 0.000 ↓ 0.0

Nested Loop (cost=522.70..3,228.06 rows=1 width=115) (actual time=.. rows= loops=)

6. 0.000 0.000 ↓ 0.0

Nested Loop (cost=522.70..3,227.23 rows=1 width=107) (actual time=.. rows= loops=)

7. 0.000 0.000 ↓ 0.0

Nested Loop (cost=522.70..3,226.94 rows=1 width=111) (actual time=.. rows= loops=)

  • Join Filter: ((gg.geo_code)::text = (g3.code)::text)
8. 0.000 0.000 ↓ 0.0

Merge Join (cost=522.70..3,179.04 rows=144 width=107) (actual time=.. rows= loops=)

  • Merge Cond: (d3.iddesc = dg3.iddesc)
  • Join Filter: (ti3.idgeo = dg3.idgeo)
9. 0.000 0.000 ↓ 0.0

Nested Loop (cost=487.39..3,731.41 rows=1,113 width=107) (actual time=.. rows= loops=)

10. 0.000 0.000 ↓ 0.0

Nested Loop (cost=486.22..3,388.04 rows=1 width=95) (actual time=.. rows= loops=)

11. 0.000 0.000 ↓ 0.0

Index Scan using desc_pkey on ""desc"" d3 (cost=0.00..12.36 rows=1 width=4) (actual time=.. rows= loops=)

  • Filter: ((code)::text = 'PROJECT'::text)
12. 0.000 0.000 ↓ 0.0

Nested Loop (cost=486.22..3,375.67 rows=1 width=91) (actual time=.. rows= loops=)

  • Join Filter: (vi.date_prev = vi2.date_prev)
13. 0.000 0.000 ↓ 0.0

Nested Loop (cost=486.22..3,367.38 rows=1 width=83) (actual time=.. rows= loops=)

14. 0.000 0.000 ↓ 0.0

Nested Loop (cost=486.22..3,367.09 rows=1 width=87) (actual time=.. rows= loops=)

15. 0.000 0.000 ↓ 0.0

Nested Loop (cost=486.22..3,359.68 rows=4 width=111) (actual time=.. rows= loops=)

16. 0.000 0.000 ↓ 0.0

Nested Loop (cost=486.22..3,358.41 rows=4 width=107) (actual time=.. rows= loops=)

17. 0.000 0.000 ↓ 0.0

Hash Join (cost=486.22..3,354.94 rows=4 width=103) (actual time=.. rows= loops=)

  • Hash Cond: ((geo.code)::text = (gg.group_geo_code)::text)
18. 0.000 0.000 ↓ 0.0

Hash Join (cost=475.96..3,338.36 rows=157 width=70) (actual time=.. rows= loops=)

  • Hash Cond: (dg.iddesc = d2.iddesc)
19. 0.000 0.000 ↓ 0.0

Hash Join (cost=474.88..3,332.17 rows=942 width=74) (actual time=.. rows= loops=)

  • Hash Cond: (vi.idtype_index = ti.idtype_index)
20. 0.000 0.000 ↓ 0.0

Seq Scan on values_index_carrefour vi (cost=0.00..2,479.35 rows=98,268 width=20) (actual time=.. rows= loops=)

  • Filter: (date >= '2005-01-01'::date)
21. 0.000 0.000 ↓ 0.0

Hash (cost=473.14..473.14 rows=139 width=62) (actual time=.. rows= loops=)

22. 0.000 0.000 ↓ 0.0

Nested Loop (cost=101.99..473.14 rows=139 width=62) (actual time=.. rows= loops=)

23. 0.000 0.000 ↓ 0.0

Hash Join (cost=101.99..427.25 rows=139 width=49) (actual time=.. rows= loops=)

  • Hash Cond: (ti.idclass = c.idclass)
24. 0.000 0.000 ↓ 0.0

Merge Join (cost=36.55..357.15 rows=873 width=20) (actual time=.. rows= loops=)

  • Merge Cond: (ti.idgeo = dg.idgeo)
25. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.16..1,480.38 rows=1,113 width=12) (actual time=.. rows= loops=)

  • Join Filter: (ti.idsource = source.idsource)
26. 0.000 0.000 ↓ 0.0

Index Scan using type_index_idx on type_index ti (cost=0.00..1,153.68 rows=14,468 width=16) (actual time=.. rows= loops=)

27. 0.000 0.000 ↓ 0.0

Materialize (cost=1.16..1.17 rows=1 width=4) (actual time=.. rows= loops=)

28. 0.000 0.000 ↓ 0.0

Seq Scan on source (cost=0.00..1.16 rows=1 width=4) (actual time=.. rows= loops=)

  • Filter: ((code)::text = 'SYNOP'::text)
29. 0.000 0.000 ↓ 0.0

Sort (cost=35.30..35.85 rows=218 width=8) (actual time=.. rows= loops=)

  • Sort Key: dg.idgeo
30. 0.000 0.000 ↓ 0.0

Seq Scan on desc_geo dg (cost=0.00..26.84 rows=218 width=8) (actual time=.. rows= loops=)

  • Filter: (value = 'CRFPGCHYPER'::text)
31. 0.000 0.000 ↓ 0.0

Hash (cost=64.49..64.49 rows=76 width=29) (actual time=.. rows= loops=)

32. 0.000 0.000 ↓ 0.0

Hash Join (cost=52.18..64.49 rows=76 width=29) (actual time=.. rows= loops=)

  • Hash Cond: (c.idclass = dc.idclass)
33. 0.000 0.000 ↓ 0.0

Seq Scan on class c (cost=0.00..9.76 rows=476 width=25) (actual time=.. rows= loops=)

34. 0.000 0.000 ↓ 0.0

Hash (cost=51.23..51.23 rows=76 width=4) (actual time=.. rows= loops=)

35. 0.000 0.000 ↓ 0.0

Hash Join (cost=1.09..51.23 rows=76 width=4) (actual time=.. rows= loops=)

  • Hash Cond: (dc.iddesc = d.iddesc)
36. 0.000 0.000 ↓ 0.0

Seq Scan on desc_class dc (cost=0.00..47.69 rows=453 width=8) (actual time=.. rows= loops=)

  • Filter: ((value)::text = 'GMS'::text)
37. 0.000 0.000 ↓ 0.0

Hash (cost=1.07..1.07 rows=1 width=4) (actual time=.. rows= loops=)

38. 0.000 0.000 ↓ 0.0

Seq Scan on ""desc"" d (cost=0.00..1.07 rows=1 width=4) (actual time=.. rows= loops=)

  • Filter: ((code)::text = 'CANAL'::text)
39. 0.000 0.000 ↓ 0.0

Index Scan using geo_pkey on geo (cost=0.00..0.32 rows=1 width=13) (actual time=.. rows= loops=)

  • Index Cond: (geo.idgeo = ti.idgeo)
40. 0.000 0.000 ↓ 0.0

Hash (cost=1.07..1.07 rows=1 width=4) (actual time=.. rows= loops=)

41. 0.000 0.000 ↓ 0.0

Seq Scan on ""desc"" d2 (cost=0.00..1.07 rows=1 width=4) (actual time=.. rows= loops=)

  • Filter: ((code)::text = 'PROJECT'::text)
42. 0.000 0.000 ↓ 0.0

Hash (cost=6.78..6.78 rows=278 width=42) (actual time=.. rows= loops=)

43. 0.000 0.000 ↓ 0.0

Seq Scan on geo_group gg (cost=0.00..6.78 rows=278 width=42) (actual time=.. rows= loops=)

44. 0.000 0.000 ↓ 0.0

Index Scan using geo_pkey on geo g2 (cost=0.00..0.85 rows=1 width=4) (actual time=.. rows= loops=)

  • Index Cond: (g2.idgeo = geo.idgeo)
45. 0.000 0.000 ↓ 0.0

Index Scan using class_pkey on class c2 (cost=0.00..0.31 rows=1 width=4) (actual time=.. rows= loops=)

  • Index Cond: (c2.idclass = c.idclass)
46. 0.000 0.000 ↓ 0.0

Index Scan using type_index_idx on type_index ti2 (cost=0.00..1.84 rows=1 width=16) (actual time=.. rows= loops=)

  • Index Cond: ((ti2.idgeo = g2.idgeo) AND (ti2.idclass = c2.idclass))
47. 0.000 0.000 ↓ 0.0

Index Scan using source_pkey on source s2 (cost=0.00..0.27 rows=1 width=4) (actual time=.. rows= loops=)

  • Index Cond: (s2.idsource = ti2.idsource)
  • Filter: ((s2.code)::text = 'SYNOP_CLIMATO'::text)
48. 0.000 0.000 ↓ 0.0

Index Scan using values_index_carrefour_dateidx on values_index_carrefour vi2 (cost=0.00..8.28 rows=1 width=20) (actual time=.. rows= loops=)

  • Index Cond: ((vi2.date = vi.date) AND (vi2.idtype_index = ti2.idtype_index))
49. 0.000 0.000 ↓ 0.0

Hash Join (cost=1.18..332.24 rows=1,113 width=12) (actual time=.. rows= loops=)

  • Hash Cond: (ti3.idsource = s3.idsource)
50. 0.000 0.000 ↓ 0.0

Seq Scan on type_index ti3 (cost=0.00..265.68 rows=14,468 width=16) (actual time=.. rows= loops=)

51. 0.000 0.000 ↓ 0.0

Hash (cost=1.16..1.16 rows=1 width=4) (actual time=.. rows= loops=)

52. 0.000 0.000 ↓ 0.0

Seq Scan on source s3 (cost=0.00..1.16 rows=1 width=4) (actual time=.. rows= loops=)

  • Filter: ((code)::text = 'SYNOP'::text)
53. 0.000 0.000 ↓ 0.0

Sort (cost=35.30..35.85 rows=218 width=8) (actual time=.. rows= loops=)

  • Sort Key: dg3.iddesc
54. 0.000 0.000 ↓ 0.0

Seq Scan on desc_geo dg3 (cost=0.00..26.84 rows=218 width=8) (actual time=.. rows= loops=)

  • Filter: (value = 'CRFPGCHYPER'::text)
55. 0.000 0.000 ↓ 0.0

Index Scan using geo_pkey on geo g3 (cost=0.00..0.32 rows=1 width=13) (actual time=.. rows= loops=)

  • Index Cond: (g3.idgeo = ti3.idgeo)
56. 0.000 0.000 ↓ 0.0

Index Scan using class_pkey on class c3 (cost=0.00..0.27 rows=1 width=4) (actual time=.. rows= loops=)

  • Index Cond: (c3.idclass = ti3.idclass)
57. 0.000 0.000 ↓ 0.0

Index Scan using values_index_carrefour_dateidx on values_index_carrefour vi3 (cost=0.00..0.82 rows=1 width=16) (actual time=.. rows= loops=)

  • Index Cond: ((vi3.date = vi.date) AND (vi3.idtype_index = ti3.idtype_index))
58. 0.000 0.000 ↓ 0.0

Index Scan using date_ref_idx2 on date_ref (cost=0.00..8.28 rows=1 width=8) (actual time=.. rows= loops=)

  • Index Cond: (date_ref.ddate = vi.date)
59. 0.000 0.000 ↓ 0.0

Index Scan using desc_geo_idx on desc_geo dg4 (cost=0.00..13.58 rows=1 width=8) (actual time=.. rows= loops=)

  • Index Cond: (dg4.idgeo = g3.idgeo)
  • Filter: (dg4.value = 'MAGASIN'::text)
60. 0.000 0.000 ↓ 0.0

Index Scan using desc_idx on ""desc"" d4 (cost=0.00..0.33 rows=1 width=4) (actual time=.. rows= loops=)

  • Index Cond: ((d4.code)::text = 'SCALE'::text)
61.          

SubPlan (forNested Loop)

62. 0.000 0.000 ↓ 0.0

Index Scan using class_code_key on class (cost=0.00..8.27 rows=1 width=4) (actual time=.. rows= loops=)

  • Index Cond: ((code)::text = ($0)::text)