[firebase-br] select complicada

Suporte GeraConst suporte em geraconst.com.br
Qui Jul 16 15:30:58 -03 2015


Boa tarde pessoal, estou com uma questão que não sei se existe solução, na seguinte select
select ite_item_pedido.nropedido,
       ite_item_pedido.cod_item,
       ite_pims.fat_dir,
       ite_item_pedido.sequencia seq1,
       ite_item_pedido.seq,
       ite_itens.des_item,
       plj_depara.cod_insumo,
       ite_item_pedido.cod_etapa_obra,
       plj_servicos_obra.descricao,
       coalesce(cast((select spr_fat_saldo_pedido.vn_vlr_result
          from spr_fat_saldo_pedido(ite_item_pedido.nropedido,ite_item_pedido.cod_item,ite_pims.cod_grupo_empresa,ite_pims.cod_pessoa_empresa,ite_item_pedido.sequencia,ite_item_pedido.nropims,ite_item_pedido.seq,ite_item_pedido.seq_insumo)) as numeric(15,2)),0) v_saldo,
       ite_items_pims.seq_insumo

from ite_items_pims
inner join ite_pims  on (ite_items_pims.nropims = ite_pims.nropims)
inner join ite_item_pedido on (ite_items_pims.nropims = ite_item_pedido.nropims and
                               ite_items_pims.cod_etapa_obra = ite_item_pedido.cod_etapa_obra and
                               ite_items_pims.cod_item = ite_item_pedido.cod_item and
                               ite_items_pims.seq = ite_item_pedido.seq and
                               ite_items_pims.seq_insumo = ite_item_pedido.seq_insumo)
inner join ite_itens on (ite_item_pedido.cod_item = ite_itens.cod_item)
left outer join plj_depara on (ite_itens.cod_item = plj_depara.cod_item)
left outer join plj_servicos_obra on (ite_items_pims.cod_obra = plj_servicos_obra.cod_obra and
                                      ite_items_pims.cod_etapa_obra = plj_servicos_obra.codigo)
where ite_items_pims.cod_obra = 11

se rodar ela assim a execução leva 656ms, agora se eu colocar um
filtro pra trazer somente o itens que o saldo é > 0 vai para 14s
existe alguma forma de fazer este filtro sem perder tanta performance ?
Att.
Carlos Renato.


---
Este email foi escaneado pelo Avast antivírus.
https://www.avast.com/antivirus





Mais detalhes sobre a lista de discussão lista