explain.depesz.com

PostgreSQL's explain analyze made readable

Result: I6Ap : teste

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 0.000 ↓ 0.0

Limit (cost=18.91..18.92 rows=1 width=81) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Sort (cost=18.91..18.92 rows=1 width=81) (actual rows= loops=)

  • Sort Key: idp.descricaoresumida
3. 0.000 0.000 ↓ 0.0

WindowAgg (cost=18.85..18.90 rows=1 width=81) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

Unique (cost=18.85..18.88 rows=1 width=73) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Sort (cost=18.85..18.85 rows=1 width=73) (actual rows= loops=)

  • Sort Key: p.cod_objeto, idp.codigo, idp.descricaoresumida, c.descricao, idp.tipo, p.tipo, pe.sexo, pe.tiporeproducao, pe.quantidadedisponivel, pe.estoqueminimo
6. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=2.22..18.84 rows=1 width=73) (actual rows= loops=)

  • Filter: ((c.nome IS NULL) OR (unaccent((c.nome)::text) ~~* unaccent(concat('%', 'w', '%'))) OR (((cla.nome IS NULL) OR (unaccent((cla.nome)::text) ~~* unaccent(concat('%', 'w', '%')))) AND (cp.situacao = 1)))
7. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=1.95..18.50 rows=1 width=95) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=1.67..18.08 rows=1 width=83) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.40..17.78 rows=1 width=63) (actual rows= loops=)

  • Join Filter: ((unaccent((idp.codigo)::text) ~~* unaccent('w'::text)) OR (unaccent((alt.codigo)::text) ~~* unaccent('w'::text)))
10. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=1.12..17.39 rows=1 width=61) (actual rows= loops=)

11. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.84..17.03 rows=1 width=54) (actual rows= loops=)

  • Join Filter: ((pp.produto)::text = (p.cod_objeto)::text)
12. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.56..16.61 rows=1 width=48) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Index Only Scan using idx_pessoa_produto on pessoaproduto pp (cost=0.28..8.30 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (pessoa = 'q'::text)
14. 0.000 0.000 ↓ 0.0

Index Scan using idx_fk_produto1 on produto pe (cost=0.28..8.30 rows=1 width=32) (actual rows= loops=)

  • Index Cond: ((produto)::text = (pp.produto)::text)
15. 0.000 0.000 ↓ 0.0

Index Scan using pk_produto on produto p (cost=0.28..0.41 rows=1 width=38) (actual rows= loops=)

  • Index Cond: ((cod_objeto)::text = (pe.produto)::text)
  • Filter: ((situacao = 1) AND ((tipo = ANY ('{1,2,9,10}'::integer[])) OR (0 = tipo)))
16. 0.000 0.000 ↓ 0.0

Index Scan using idx_fk_produto on identificacaoproduto alt (cost=0.28..0.35 rows=1 width=26) (actual rows= loops=)

  • Index Cond: ((p.cod_objeto)::text = (produto)::text)
17. 0.000 0.000 ↓ 0.0

Index Scan using pk_identificacaoproduto on identificacaoproduto idp (cost=0.28..0.37 rows=1 width=41) (actual rows= loops=)

  • Index Cond: ((cod_objeto)::text = (p.codigoprincipal)::text)
  • Filter: ((unidadevenda = 1) AND (unaccent((descricaoresumida)::text) ~~* unaccent(concat('%', 'w', '%'))))
18. 0.000 0.000 ↓ 0.0

Index Scan using pk_classificacao on classificacao c (cost=0.27..0.31 rows=1 width=32) (actual rows= loops=)

  • Index Cond: ((p.classificacaoprimaria)::text = (cod_objeto)::text)
19. 0.000 0.000 ↓ 0.0

Index Scan using idx_fk_produto2 on classificacaoproduto cp (cost=0.28..0.38 rows=3 width=28) (actual rows= loops=)

  • Index Cond: ((p.cod_objeto)::text = (produto)::text)
20. 0.000 0.000 ↓ 0.0

Index Scan using pk_classificacao on classificacao cla (cost=0.27..0.31 rows=1 width=20) (actual rows= loops=)