explain.depesz.com

PostgreSQL's explain analyze made readable

Result: z6zm

Settings
# exclusive inclusive rows x rows loops node
1. 0.009 1,206.647 ↑ 32.8 4 1

Limit (cost=3,338.53..4,505.28 rows=131 width=386) (actual time=599.055..1,206.647 rows=4 loops=1)

2. 968.599 1,206.638 ↑ 32.8 4 1

Hash Join (cost=3,338.53..4,505.28 rows=131 width=386) (actual time=599.051..1,206.638 rows=4 loops=1)

  • Hash Cond: (csa.entidad_perceptora_id = ep.id)
  • Join Filter: (to_tsvector('simple_unaccent'::regconfig, ((((CASE WHEN (CASE WHEN (CASE WHEN ((csa.nombre_taller)::text IS NULL) THEN (csa.poblaciontaller)::text WHEN ((csa.poblaciontaller)::text IS NULL) THEN (csa.nombre_taller)::text ELSE (((csa.nombre_taller)::text || ' '::text) || (csa.poblaciontaller)::text) END IS NULL) THEN (csa.direcciontaller)::text WHEN ((csa.direcciontaller)::text IS NULL) THEN CASE WHEN ((csa.nombre_taller)::text IS NULL) THEN (csa.poblaciontaller)::text WHEN ((csa.poblaciontaller)::text IS NULL) THEN (csa.nombre_taller)::text ELSE (((csa.nombre_taller)::text || ' '::text) || (csa.poblaciontaller)::text) END ELSE ((CASE WHEN ((csa.nombre_taller)::text IS NULL) THEN (csa.poblaciontaller)::text WHEN ((csa.poblaciontaller)::text IS NULL) THEN (csa.nombre_taller)::text ELSE (((csa.nombre_taller)::text || ' '::text) || (csa.poblaciontaller)::text) END || ' '::text) || (csa.direcciontaller)::text) END IS NULL) THEN (csa.telefonotaller)::text WHEN ((csa.telefonotaller)::text IS NULL) THEN CASE WHEN (CASE WHEN ((csa.nombre_taller)::text IS NULL) THEN (csa.poblaciontaller)::text WHEN ((csa.poblaciontaller)::text IS NULL) THEN (csa.nombre_taller)::text ELSE (((csa.nombre_taller)::text || ' '::text) || (csa.poblaciontaller)::text) END IS NULL) THEN (csa.direcciontaller)::text WHEN ((csa.direcciontaller)::text IS NULL) THEN CASE WHEN ((csa.nombre_taller)::text IS NULL) THEN (csa.poblaciontaller)::text WHEN ((csa.poblaciontaller)::text IS NULL) THEN (csa.nombre_taller)::text ELSE (((csa.nombre_taller)::text || ' '::text) || (csa.poblaciontaller)::text) END ELSE ((CASE WHEN ((csa.nombre_taller)::text IS NULL) THEN (csa.poblaciontaller)::text WHEN ((csa.poblaciontaller)::text IS NULL) THEN (csa.nombre_taller)::text ELSE (((csa.nombre_taller)::text || ' '::text) || (csa.poblaciontaller)::text) END || ' '::text) || (csa.direcciontaller)::text) END ELSE ((CASE WHEN (CASE WHEN ((csa.nombre_taller)::text IS NULL) THEN (csa.poblaciontaller)::text WHEN ((csa.poblaciontaller)::text IS NULL) THEN (csa.nombre_taller)::text ELSE (((csa.nombre_taller)::text || ' '::text) || (csa.poblaciontaller)::text) END IS NULL) THEN (csa.direcciontaller)::text WHEN ((csa.direcciontaller)::text IS NULL) THEN CASE WHEN ((csa.nombre_taller)::text IS NULL) THEN (csa.poblaciontaller)::text WHEN ((csa.poblaciontaller)::text IS NULL) THEN (csa.nombre_taller)::text ELSE (((csa.nombre_taller)::text || ' '::text) || (csa.poblaciontaller)::text) END ELSE ((CASE WHEN ((csa.nombre_taller)::text IS NULL) THEN (csa.poblaciontaller)::text WHEN ((csa.poblaciontaller)::text IS NULL) THEN (csa.nombre_taller)::text ELSE (((csa.nombre_taller)::text || ' '::text) || (csa.poblaciontaller)::text) END || ' '::text) || (csa.direcciontaller)::text) END || ' '::text) || (csa.telefonotaller)::text) END ||+ (csa.provinciataller)::text) ||+ (ep.num_doc)::text) ||+ (csa.emailtaller)::text) ||+ (csa.codpostaltaller)::text)) @@ '''eurorepar'''::tsquery)
  • Rows Removed by Join Filter: 26273
3. 24.585 24.585 ↑ 1.0 26,277 1

Seq Scan on taller csa (cost=0.00..1,097.77 rows=26,277 width=386) (actual time=0.015..24.585 rows=26,277 loops=1)

4. 102.652 213.454 ↑ 1.0 69,446 1

Hash (cost=2,470.46..2,470.46 rows=69,446 width=14) (actual time=213.453..213.454 rows=69,446 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 4145kB
5. 110.802 110.802 ↑ 1.0 69,446 1

Seq Scan on entidad_perceptora ep (cost=0.00..2,470.46 rows=69,446 width=14) (actual time=0.015..110.802 rows=69,446 loops=1)